php - 如何在每次 `echo` 调用后刷新输出?

标签 php apache echo flush

我有一个只向客户端生成日志的 php 脚本。
当我回显某些内容时,我希望将其即时传输到客户端。
(因为在脚本处理过程中,页面是空白的)
我已经玩过 ob_start()ob_flush() 了,但是没有用。

什么是最好的解决方案?

PS:在 echo 调用结束时放一个 flush 有点脏...

编辑:答案都不起作用,PHP 或 Apache 故障?

最佳答案

我遇到了同样的问题,并且手册中发布的示例之一有效。必须将字符集指定为此处已经提到的海报之一。 http://www.php.net/manual/en/function.ob-flush.php#109314

header( 'Content-type: text/html; charset=utf-8' );
echo 'Begin ...<br />';
for( $i = 0 ; $i < 10 ; $i++ )
{
    echo $i . '<br />';
    flush();
    ob_flush();
    sleep(1);
}
echo 'End ...<br />';

关于php - 如何在每次 `echo` 调用后刷新输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3133209/

相关文章:

php - Symfony 2 唯一验证器

php - 确定哪些用户上传了图像?

php - 用 htaccess 替换问号和等号

php - 我如何将注册系统的错误回显到另一个索引文件

PHP字符串长度

php - ZF2 查询结果不正确

apache - .htaccess 将查询字符串中的 "? | & | = "替换为 "_"

apache - 如何忽略.htaccess?

php - 无法在 PHP echo 内的 img 上居中或使用 css

batch-file - 如何在使用代码页 437 时回显特殊字符,如 »?