Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP什么时候不一次输出所有页面?_Php_Html - Fatal编程技术网

PHP什么时候不一次输出所有页面?

PHP什么时候不一次输出所有页面?,php,html,Php,Html,这里有点奇怪,我想这会输出一个页面并逐部分显示,直到全部加载(类似于Wordpress更新/重新安装过程的工作方式): 我不知道您认为php是如何工作的,但它只是服务器端,您希望在客户端进行部分更新。PHP不是这样工作的 当您调用该php脚本时,php解释器开始执行它,将输出放入临时位置,然后使用sleep函数,php解释器等待到毫秒,然后继续执行,将输出连接到临时位置,然后继续。。。完成所有脚本执行后,php将整个输出发送到客户端 如果您需要对页面进行部分更新,则需要进入异步调用和ajax的

这里有点奇怪,我想这会输出一个页面并逐部分显示,直到全部加载(类似于Wordpress更新/重新安装过程的工作方式):



我不知道您认为php是如何工作的,但它只是服务器端,您希望在客户端进行部分更新。PHP不是这样工作的

当您调用该php脚本时,php解释器开始执行它,将输出放入临时位置,然后使用sleep函数,php解释器等待到毫秒,然后继续执行,将输出连接到临时位置,然后继续。。。完成所有脚本执行后,php将整个输出发送到客户端


如果您需要对页面进行部分更新,则需要进入异步调用和ajax的世界。

它缓冲输出,并且仅在页面加载完成时或在缓冲了几千字节后发送。您可以通过将代码完全包装到和
ob\u end\u flush()
,或者在这种情况下,在每次睡眠前调用,来控制此功能


更多信息:

php是服务器端。您是否使用javascript的
setTimeout()
函数尝试过这一点

下面是一个字符串的示例,它在5秒延迟后重复了10次

<script>
setTimeout(test, 5000);

function test(){
    for (var i=0;i<10;i++){
    document.write("test <br />");
    }
}
</script>

设置超时(测试,5000);
功能测试(){

对于(var i=0;这与我试图解决的关于为什么一次打印出整个页面的问题无关。php是服务器端的,这意味着它一次发送到服务器,得到处理,然后返回结果。这样做可能是javascript。分数超过3000,我想OP理解PHP是什么。他们只是在学习占该语言90%的怪癖。这不是PHP的“怪癖”。它是HTTP协议的一部分。回想一下,该协议要求您定义响应大小(内容长度)在HTTP头文件中,任何语言都不可能预测它的响应大小,直到它处理完所有可能的输出。@Sean说得好,但我知道我看到过各种页面开始加载,然后随着页面完全下载而扩展。没有页面(可能非常小的页面除外)在一个数据包中出现!
<script>
setTimeout(test, 5000);

function test(){
    for (var i=0;i<10;i++){
    document.write("test <br />");
    }
}
</script>