PHP - 如何使用Transfer-Encoding流式传输内容:chunked

时间:2012-02-05 11:39:54

标签: php stream comet

我正在尝试使用php实现一个简单的流测试。使用以下代码,我可以看到响应正在流式传输 - 使用firebug net tab。

但是,在响应完成之前,内容不会呈现。 我错过了什么?

header('Content-Encoding: chunked');
header('Transfer-Encoding: chunked');
header('Content-Type: text/html');
header('Connection: keep-alive');
flush();
ob_flush();

for ($i = 0; $i < 100; $i++) {
    dump_chunk('<script type="text/javascript">console.log(' . $i . ')</script>');
    flush();
    ob_flush();
    sleep(1);
}

function dump_chunk($chunk) {
    echo sprintf("%x\r\n", strlen($chunk));
    echo $chunk;
    echo "\r\n";
}

0 个答案:

没有答案