例如,有个 XXX.PHP,要求每5分钟要执行一次...
平台是XP,我想在页面安装程序完成之后,就自动 新建计划任务,并自动执行这个PHP程序..
就像搜狗拼音安装完之后会自动执行计划任务,同步词库一样..
这样的功能PHP能实现吗? 还是要其他语言,win32编程才能实现呢,请指点下,谢谢

解决方案 »

  1.   

    程序 附件 系统工具 任务计划一步一步按提示,,关键一条命令
    类似于
    D:\php5\php.exe -q D:\php5\www\test.php
      

  2.   


    //最傻的办法,有瑕疵
    set_time_limit(0);
    while(true)
    {
      $start = time();
      //Doing
      if()//一些条件,到这里时间不足5分钟
      {
        sleep(100);//睡一段时间,补足5分钟
      }
    }
      

  3.   

    LS的方法我用得太多了,这个是折中的方法...因为程序可能会死掉...
    其实,我只是想问PHP能不能做到,像搜狗那样新建XP下的计划任务
      

  4.   

    用别的页面触发在别的页面加入<img src="cron.php" height="0" width="0">当符合条件的时候,就执行相应的功能当一段时间没有触发的时候,连续执行数次……假装数据是定时的
      

  5.   

    系统的计划任务比较好
    这方面不如java,,,php一开始就没打算长驻内存,用完释放。。折中的办法,总是不尽人意的
      

  6.   

    WEB语言依赖于服务器,如果是localhost,则可以用windows的计划任务监视,如果是远端服务器则必须依赖于你的HTTP端口(80)。如果80端口断开,你的PHP程序将无法正常运行。用B/S程序远没有C/S程序在这方面灵活。
      

  7.   

    7L....
    那个"别的页面"也可能会挂掉...
    我还想到另外一个方法,写日志,然后让程序通过日志判断程序是否正常执行,如果没有,则提示用户手动启动..
    估计真的要win32编程了
      

  8.   

    添加一个任务计划,执行一个BAT文件
    你用php来修改这个bat文件就可以了
      

  9.   

    system("schtasks /create /tn $task_name /tr \"C:\AppServ\php5\php.exe -q C:\name.php\"  /sc daily /mo 1 /st 05:30:00  /ru \"system\" ");or <?php
    ignore_user_abort(); //即使Client断开(如关掉浏览器),PHP脚本也可以继续执行.
    set_time_limit(0); // 执行时间为无限制,php默认的执行时间是30秒,通过set_time_limit(0)可以让程序无限制的执行下去
    $interval=60*5; // 每隔5分钟运行
    do{
    //你的程序
    sleep($interval); // 等待5分钟
    }while(true);
    ?> 
      

  10.   

    自己去查schtasks的详细参数。
    只是权限要够,你做IDC的话,权限应该没问题。