示例
代码语言:javascript复制public function test(){
realTimeOutputPrepare();
echo '6666'.PHP_EOL;
sleep(3);
realTimeOutput('9999');
}
调用的方法如下
代码语言:javascript复制/**实时输出内容-步骤一
* 实时输出内容准备(设置头部)
* 在你需要实时输出的方法最前面调用
*/
function realTimeOutputPrepare(){
header('X-Accel-Buffering: no');
set_time_limit(0);
ob_end_clean();
ob_implicit_flush(1);
}
/**实时输出内容-步骤二
* 实时输出内容(清理缓冲区)
* 需要输出内容时再调用
*/
function realTimeOutput($string){
if(is_array($string)){
$string = Tools::arrayToJson($string);
}
echo $string."<br>";
flush();
}
经测试:浏览器运行正常,命令行模式有报错!
未经允许不得转载:肥猫博客 » PHP实时输出(一遍运行一遍输出)