来自 SWIG 生成的 PHP 扩展的标准输出
我有以下 C++ 函数:
void foo() {
std::cout << "bar" << std::endl;
}
我通过 SWIG 将其移植到 PHP。一切都编译良好并且扩展加载正确。我可以从 PHP 调用 foo()
,但如果从命令行运行 PHP 脚本,我只能看到 bar
输出。
$ php script.php
bar
如果我在浏览器中加载脚本,则不会出现任何内容。为什么在这种情况下不显示 bar
?
I have the following C++ function:
void foo() {
std::cout << "bar" << std::endl;
}
I'm porting this to PHP via SWIG. Everything compiles fine and the extension loads properly. I'm able to call foo()
from PHP, but I only see the bar
output if I run the PHP script from the command line.
$ php script.php
bar
If I load the script in the browser, nothing appears. Why does it not show bar
in this case?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您不能直接打印到标准输出。当然,这仅在您使用 CLI SAPI 时才有效。使用 php_printf 或其中任何一个:
You can't print to stdout directly. This will of course only work if you're using the CLI SAPI. Use
php_printf
or any of these: