PHP标记输出完成

时间:2012-03-20 20:14:49

标签: php

我正在参与php程序的开发,我们正在努力提高其性能,例如:

执行,完成输出给用户,做预定的事情。

这里的目标是向apache,IIS等发送信息......说明所有信息都已完成,可以发送到浏览器。因为在这个程序中工作的方式,它应该不缓存所有输出,测量它然后输出,它应该在处理时尽快输出信息,所以ob_ *函数不是一个选项。 / p>

我怎样才能做到这一点?我只能在使用输出缓冲时找到一个选项...

注意:curl也不是一个选项。一些应该在其中工作的服务器将其禁用。 对于其他常见的东西,shell_exec(),exec()等......

1 个答案:

答案 0 :(得分:0)

您确实想使用ob_函数。

<?php

set_time_limit(300); 

ob_start();

echo "Starting task 1...";
long_task_1();
echo "Task 1 complete".    
ob_flush();
flush();


echo "Starting task 2...";
long_task_2();
echo "Task 2 complete".    
ob_flush();
flush();


echo "Starting task 3...";
long_task_3();
echo "Task 3 complete".    
ob_flush();
flush();

?>

Reference.