PHP 调试时echo 不显示另一种原因
在通过执行长时间的PHP程序时,出现中间ECHO 不输出的现象。
一般解决方法:加缓存字符,清缓存等方法。
echo str_pad('', 1024*4); flush(); ob_flush();
ob_end_clean() 静默的清除服务端缓存的数据。等方法
还有增大超时设置。
set_time_limit(0); ini_set("max_execution_time",0);
以上都不行时,可以查看APACHE日志,是否QOS模块都安全过滤设置。
测试方法,可以通过
for ($i=0;$i<30;$i++){ echo $i. flush(); sleep(1); }
看看能不能执行30秒,如果不能则服务端有问题。
通常在httpd.conf中,可能会有QS_SrvMinDataRate 150 1200引起截断。去掉就好了。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)