当前位置:  开发笔记 > 编程语言 > 正文

如何让PHP生成Chunked响应

如何解决《如何让PHP生成Chunked响应》经验,为你挑选了3个好方法。

我搜索了这个问题,但没有答案.

我希望我的PHP脚本在chunked中生成HTTP响应(http://en.wikipedia.org/wiki/Chunked_transfer_encoding).怎么做?

更新:我明白了.我必须指定Transfer-encoding标头并刷新它.

header("Transfer-encoding: chunked");
flush(); 

冲洗是必要的.否则,将生成Content-Length标头.

而且,我必须自己制作块.有了辅助功能,并不难.

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

Evert.. 6

如果您未指定内容长度标头并且发生刷新,则PHP响应将始终被分块.(这将在x字节后自动发生,只是不确切知道多少).

关心这是一个奇怪的事情.这是某种学术/学习活动还是你想要解决的现实世界问题?



1> Evert..:

如果您未指定内容长度标头并且发生刷新,则PHP响应将始终被分块.(这将在x字节后自动发生,只是不确切知道多少).

关心这是一个奇怪的事情.这是某种学术/学习活动还是你想要解决的现实世界问题?



2> Orwellophile..:

这已经有点小了...如果你不介意大的asunk(0x1000八位字节左右),那么是的,PHP将会成功.


PHP将生成编号的部分等.

如果你想发送微小的块,就像你对AJAX客户端所做的那样......好吧,我把OP的问题和一些关于PHP.NET的研究结合在一起,看起来他确实是一件好事. .

$ echo -en"GET/chunked/HTTP/1.1\r \nHost:ec\r \n\r \n"| nc localhost 80

HTTP/1.1 200 OK
Date: Wed, 23 May 2012 13:03:01 GMT
Server: Apache/2.2.9 (Debian) PHP/5.3.5-1 with Suhosin-Patch mod_ssl/2.2.9 OpenSSL/0.9.8o
X-Powered-By: PHP/5.3.5-1
Transfer-encoding: chunked
Content-Type: text/html

14
Teachers have class.
50
We secure our friends not by accepting favors but by doing them.
            -- Thucydides
48
Vulcans never bluff.
            -- Spock, "The Doomsday Machine", stardate 4202.1
31
All kings is mostly rapscallions.
            -- Mark Twain
41
Reappraisal, n.:
    An abrupt change of mind after being found out.
49
He who knows, does not speak.  He who speaks, does not know.
            -- Lao Tsu

它是否最终会挤出它自己的(不正确的)块数,还有待观察......但我没有看到它的迹象.




3> Andriy F...:

截至2013年2月16日的工作样本




    
        
        Title
    
    
        ');
            flush();
            ob_flush();
        }
        sleep(1); // needed for last animation
        ?>
    

推荐阅读
大大炮
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有