PHP在开启了Xdebug扩展之后,打开测试网页就很慢。断点已经打上去了,PHPSTORM上面Debugger也有提示,但是网页就是不显示
我的Xdebug配置如下`[Xdebug]zend_extension=C:xamppphpextphp_xdebug.dllxdebug.remote_enable = Onxdebug.remote_handler = "dbgp"xdebug.remote_host= localhostxdebug.remote_port = 9000xdebug.idekey = "PHPSTORM"xdebug.profiler_enable=0`这是我的截图
就这样,网页一直没反应,然后停止调试之后,网页内容就出来了
3 回答
![?](http://img1.sycdn.imooc.com/54584c9c0001489602200220-100-100.jpg)
慕的地8271018
TA贡献1796条经验 获得超4个赞
内容在输出缓冲区中,调用flush()将当前缓冲区内容发送到浏览器
apache环境下,php的配置文件中有output_buffering,默认为4096(4K),调用ob_end_flush()来刷新缓冲区
webserver apache也有一个缓冲区来将php的输出进行缓冲,调用flush()刷新缓冲区
浏览器端有4096bytes(4K)的缓冲区,这个由浏览器进行控制
这些缓冲区将在请求结束阶段进行自动刷新
在调试阶段可以考虑先发送4096字节的空字符,将浏览器的缓冲区填满,然后刷新php和apache的缓冲区即可实时看到输出
echo $str = str_repeat(" ",4096);
$a = 1;
if($a != 1)
{
echo 1;
}
else
{
echo 2;
}
//执行以下两步后,将可以看到当前缓冲区内容
ob_end_flush();
flush();
- 3 回答
- 0 关注
- 784 浏览
添加回答
举报
0/150
提交
取消