PHP如何提前输出

来源:百度知道 编辑:UC知道 时间:2024/06/16 01:19:06
因为我需要通过访问来驱动一个 while(1)的无限循环,我想在while(1)之前给浏览器返回一个通知启动成功,总之意思就是让浏览器认为页面已经结束了,实际上服务器上还在运行。
简单点表示就是类似于die()函数,输出一段信息,但不退出脚本。
我要做的功能也是是客户端一个按钮,点击以后服务器端做这个无限的循环,并且通知客服端已经开始了。
请我以上情况该怎么处理
潘占峰 :
第一个php的输出控制,用flush 和 ob_flush可以输出缓冲,但浏览器并不会认为脚本已经结束了,比如我用AJAX来反问这个页面,Ajax不会收到结果,另外我的关键是 会做一个无限的while循环,我希望在循环前通知浏览器开始循环了。 另外 fopen()来反问这个处理文件的话也可以结束。
至于第二个 php教程:PHP编程中for循环的使用方法 没看明白和我的问题有什么联系

可以跳转到另一页面显示开始循环,后面接着写你的while,这样就可以使脚本不断运行.

header(其它页面)

while(1)
{
...
}

================
其实在linux环境可以使用pcntl_fork()函数写个PHP的多进程程序, 但需要平台特性, windows不行,没有 fork()

PHP的输出控制
http://www.wang-lei.com.cn/post/31/

php教程:PHP编程中for循环的使用方法
http://www.zhiweinet.com/jiaocheng/2009-04/8364.htm

<form action="test.php" method="POST">
<input type="submit" />
<input type="hidden" name="submitted" />
</form>

<?php
if(isset($_POST['submitted'])) {
echo '程序开始运行';
while(1) {
echo 'test', '<br />';
}
} else {
echo '没有运行';