理论上可行比如$i = 0;
while (中止条件) {
  sleep (1000);
  echo("$i<p>"); //向客户的浏览器写
  flush (); //强行推出信息,已避免客户的浏览器认为网络联接中断而关闭联接
  $i++;
}不过实际上没有什么意义?这样做可以干什么呢?
产生出一个难以关掉的联接?
或者你的问题本来不是这个意思?或者你设想的不是在httpd中运行php,而是把php当成一种纯script来用?
那么就比较简单了。
还是写上面的代码,用CGI方式运行即可。

解决方案 »

  1.   

    如果这样的实现 让WEB服务器与客户IE建立一个永久的连接那还有什么意义?!
    就好像JAVA里边单独启动一个线程,此线程存在于WEB服务器的主线程中,我在此线程里边写上一些代码,规定每多长时间自动运行此代码,可以么?
        诸如用sleep之类的,这些东西真是毫无意义。
    如果PHP真的做不到,那我只有单独写一个应用程序放到后台,然后用exec来执行他了,这样就会显的PHP真的是落后了,它对于先进的WEB时代的确太苍白了.......
      

  2.   

    To xiaoming851(兰色代码) :
    看不懂你的意思,似乎你对http的本质还没有搞清楚。
    1、后台应该是指已加载在服务器内存中,而随时处于某种等待(比如sleep,或者某个信号),直到执行,而后又等待。
    2、“驻留后台”按字面意思应该是驻留在服务器的后台,而不是驻留在客户的后台;
    3、JAVA的线程不是运行在服务器上,而是运行在客户端的。
    4、“应用程序放到后台,然后用exec来执行”这里的后台就更不明白了,exec是执行服务器上某个未加载的进程,未加载的进程何谈“后台“呢?btw:我的代码中有个问题,应该在循环中加上set_time_limit(2000),否则php会超时结束的。
      

  3.   

    用C做过,不知道PHP行不行。没试过。关注中。
      

  4.   

    to makefool(装傻) 
    我们都在学习与探求中,我因你的热情而加分,此帖结算终止。唯一的办法只有写后台监控程序,用PHP来执行EXEC函数调用它了。