मेरे पास निम्न C ++ फ़ंक्शन है:
void foo () {std :: cout & lt; & lt; "बार" & lt; & lt; std :: endl; } मैं इसे SWIG के माध्यम से PHP पर भेज रहा हूं। सब कुछ ठीक है और एक्सटेंशन लोड ठीक से संकलित। मैं PHP से foo () कॉल करने में सक्षम हूं, लेकिन अगर मैं कमांड लाइन से PHP स्क्रिप्ट चलाता हूं तो मुझे केवल बार आउटपुट दिखाई देता है।
$ php script.php बार अगर मैं ब्राउज़र में स्क्रिप्ट लोड करता हूं, तो कुछ नहीं दिखाई देता है इस मामले में बार क्यों नहीं दिखाया जाता?
आप ऐसा नहीं कर सकते प्रिंट सीधे stdout करने के लिए यह निश्चित ही काम करेगा यदि आप सीएलआई एसएपीआई का उपयोग कर रहे हैं php_printf का उपयोग करें या इनमें से कोई भी:
// कॉल php_output_write #define PHPWRITE (str, str_len) // कॉल php_output_write_unbuffered #define PHPWRITE_H (str, str_len) // आइडम: #define PUTC (c) #define PUTC_H (c) #define PUTS (str) #define PUTS_H (str) int php_write (शून्य * buf, uint size TSRMLS_DC); Int php_printf (const char * प्रारूप, ...); Int php_output_write (const char * str, size_t len TSRMLS_DC); Int php_output_write_unbuffered (const char * str, size_t len TSRMLS_DC); // मुख्य / आउटपुट सी
Comments
Post a Comment