使用NetBeans和XDebug进行调试时没有输出

时间:2012-05-05 19:10:55

标签: php netbeans ide xdebug

我将PHP升级到5.4后遇到了一些奇怪的问题我在NetBeans 7.0.1中遇到调试问题。当debbuging会话处于活动状态时,浏览器不显示任何输出,但调试器正常运行。我可以在我的应用程序中设置断点,它们工作正常,但服务器不会将任何内容返回给浏览器。发送会话结束后,请求输出正常。

以下是我在php.ini中的设置

zend_extension = c:\php\ext\php_xdebug-2.2.0RC1-5.4-vc9.dll
xdebug.remote_enable=on
xdebug.remote_host=localhost
xdebug.remote_handler=dbgp
xdebug.remote_port=9000
xdebug.remote_log="c:\php\xdebug.log"

根据xdebug日志,xdebug被连接到IDE,IDE不会抱怨任何事情。

任何线索都会受到很多关注。 这是我的php.ini文件:http://pastebin.com/z8LBsmmw

2 个答案:

答案 0 :(得分:0)

也许您已启用output_buffering?另外,启用output_handler(如压缩处理程序,例如gzip)可以缓冲,至少直到达到某个块大小。

浏览器有时会缓冲。输出一堆空格可以解决这个问题。

答案 1 :(得分:0)

我遇到了同样的问题;有人可能会发现我的解决方案很有用。

除了关闭output_buffering和任何输出处理程序之外,正如@goat已经提到的那样,你必须打开implicit_flush

正如PHP Manual所述:

  

将其更改为 TRUE 会告诉PHP告诉输出层在每个输出块后自动刷新自身。这相当于在每次调用print或echo以及每个 HTML 块之后调用PHP函数flush()

     

在Web环境中使用PHP时,启用此选项会产生严重的性能影响,通常建议仅用于调试目的。