我正在尝试设置一个php触发器文件,该文件将引发后台进程。 (见
this question)
我在Windows Wampserver环境中这样做。
所以例如我有trigger.php运行exec函数调用我的backgroundProcess.php进行解析和执行。
但是问题是我的trigger.php文件正在等待exec()命令在停止之前完成运行backgroundProcess.php。后台进程运行约20-30秒,并且trigger.php等待所有时间,直到backgroundProcess.php完成。
这有道理吗这是运行exec()命令的trigger.php文件
exec('C:\wamp\bin\php\php'.phpversion().'\php.exe -f C:\path\to\backgroundProcess.php > C:\wamp\bin\php\php'.phpversion().'\dev\null &');
基本上,我想要trigger.php只是触发backgroundProcess,而不是等待它完成。
编辑
使用以下命令解决问题:
$WshShell = new COM("WScript.Shell");
$oExec = $WshShell->Run("C:\wamp\bin\php\phpVERSIONNUMBER\php-win.exe -f C:/wamp/www/path/to/backgroundProcess.php", 0, false);