由于程序可以从命令行运行,无需响应,因此使用exec()即可完成此任务。
http://php.net/manual/en/function.exec.php
下面评论中的第一个示例用于在提交付款时运行我的命令行程序。程序启动,用户从不等待其完成。不管你的机器是Windows还是其他。
function execInBackground($cmd) {
if (substr(php_uname(), 0, 7) == "Windows"){
pclose(popen("start /B ". $cmd, "r"));
}
else {
exec($cmd . " > /dev/null &");
}
}
在我的场景中,$cmd是“php54[目录/文件.php][程序参数]”。