我制作了这个脚本来测试PHP的执行作为后台进程
foreach($tests as $test) {
exec("php test.php ".$test["id"]);
}
Run Code Online (Sandbox Code Playgroud)
正如php过程背景中提出的 以及如何使用PHP通过Google Calendar API添加大量事件通知提醒?和php执行后台进程
但是,如果没有添加test.php,脚本的运行速度就会超过一个脚本.
我究竟做错了什么?
提前致谢!
exec()将阻止,直到你执行的过程完成 - 换句话说,你基本上将'test.php'作为子程序运行.至少你需要&在命令行参数中添加一个参数,这会将exec()进程放入后台:
exec("php test.php {$test['id']} &");
Run Code Online (Sandbox Code Playgroud)