在linux下只在在sh文件里写脚本死循环的运行php,然后后台运行sh即可。
如auto.php 写在auto.sh里面..然后在linux下执行 ./auto.sh &。因为很少用windows做服务器,但又有很多实时需要运行的php脚本。想法:
1.用IE运行,在php里面写自动刷新,但这样需要开多个IE窗口,而且一段时间后页面有可能死掉,或CPU使用100%。
2.用auto.bat 内容 start php F:\AppServ\www\auto.php  然后在php里面做死循环,但是一直脚本就要建一个bat,而且要开好多个命令提示符窗口,也不好控制。不知道还有什么好方法,能让php在后台默默地运行望高手提点。感激不尽!!!

解决方案 »

  1.   

    1.php可以命令行执行
    2.php也可以通过gtk编译为exe,尤其像你需求的这种不需要界面的更容易搞定但我的疑问是为什么php?纯后台的东西有比php更好的啊
      

  2.   


    问得好问题是我不会别的语言! 其实我整个系统都是用PHP做的,PHP比较精通,只是部分脚本需要后台运行。也因为时间关系暂不考虑用别的语言。
      

  3.   

    php F:\AppServ\www\auto.php添加一个window的server,就可以了!手动添加window服务
      

  4.   

    ignore_user_abort(); // 即使Client断开(如关掉浏览器),PHP脚本也可以继续执行. set_time_limit(0); // 执行时间为无限制,php默认的执行时间是30秒 
    sleep (10);//等待10秒钟再执行
    但是重启apache之后以上代码就无效了,不知道是不是你要的
      

  5.   


    下载安装了cygwin 和puttycgy。但发现cygwin和linux是有差别啊。我在linux下可以运行的xxx.sh文件 放到这边都不能用啊。应该怎么做后台运行嘛??求帮解决啊!!!
      

  6.   

    用命令 php auto.php & 可以后台运行。但有一个问题
    我用ps 命令 
     PID    PPID    PGID     WINPID  TTY  UID    STIME COMMAND
         3876       1    3876       3876    0  500 13:18:16 /cygdrive/f/puttycyg-20101029/cthelper
         3076    3876    3076       1260    1  500 13:18:16 /usr/bin/bash
         3944    3076    3944       3204    1  500 14:07:01 /cygdrive/f/AppServ/php5/php
         1616    3076    1616        620    1  500 14:09:15 /cygdrive/f/AppServ/php5/php只能看到是php运行的,但具体运行的哪个php文件,我怎么知道呢? 能解决这个问题就完成我的目的了。