由于某些原因,我的XAMPP服务器正在缓冲我的PHP输出。我希望它能够实时输出。有没有人知道我需要更改哪些设置来实现这一点?
由于某些原因,我的XAMPP服务器正在缓冲我的PHP输出。我希望它能够实时输出。有没有人知道我需要更改哪些设置来实现这一点?
XAMPP似乎默认将output_buffering
设置为4096。(因此内容以4K块的形式提供-这可能会带来性能上的好处。尽管如果在禁用此功能的服务器上部署,这可能会导致意外的错误(例如,“headers already sent”等),而这恰好是PHP的默认设置。)
在php.ini
中:
; Default Value: Off
; Development Value: 4096
; Production Value: 4096
; http://php.net/output-buffering
output_buffering=4096
设置为:
output_buffering=Off
并重新启动您的服务器。
请查看ob_end_flush()
,手册中关于输出控制的章节 - 特别是php.ini设置。
当然,如果您只看到一个空白页面,请检查您的错误报告设置 - 很可能一个错误会停止脚本,并且关闭错误报告后您将看不到任何内容。
如果您正在使用Xdebug进行调试,并在浏览器中检查输出,可能有以下几个原因:
请阅读此文以获取详细信息:
ini_set('display_errors',1);error_reporting(E_ALL);
。 - Félix Adriyel Gagnon-Grenier