运行php脚本作为wamp服务器中的后台进程

Lah*_*age 4 php windows wamp background-process

我有两个PHP脚本需要在WAMP服务器中作为连续的后台进程运行.

Wamp服务器安装在Windows 7 PC中.这些脚本已驻留在www根目录中的单独文件夹中.

Apache版本:2.2.8
PHP版本:5.2.6

由于这不是一个unix平台,我无法使用 nohup php script.php > /dev/null &命令来完成这项工作.我正在寻找在wamp服务器Windows平台上工作的类似命令或方法.

任何人都可以解释我需要采取的步骤来完成这项任务吗?

Imr*_*qvi 10

  1. 使用php可执行文件"C:\ wamp\php\php.exe C:\ wamp\www\index.php"创建一个批处理文件来运行你的php脚本
  2. 在Windows控制面板的计划任务中添加此批处理文件.


Dej*_*ejv 8

只需使用此功能.它适用于两种操作系统(Windows和Linux):

function execInBackground($cmd){
    if (substr(php_uname(), 0, 7) == "Windows"){ 
        pclose(popen("start /B ". $cmd, "r"));  
    }else{ 
        exec($cmd . " > /dev/null &");   
    } 
} 
Run Code Online (Sandbox Code Playgroud)

这是一个如何使用该功能的简单示例:

execInBackground('php feed/handleFeed.php db_name '.$second_param);
Run Code Online (Sandbox Code Playgroud)

在上面的例子中,我们启动脚本handleFeed.php,它位于名为"feed"的文件夹中,我们传递2个参数(数据库名称和其他一些第二个参数).