我有一个PHP脚本,用于查询数据库中要完成的工作列表,并基于它在数据库中找到的内容(基本上是一个进程队列)来触发其他PHP脚本。PHP shell_exec等待脚本完成?
队列运行器脚本执行的一些脚本可能需要30秒左右才能完成运行(转换视频,调整图像大小等)。
问题是,队列运行脚本中的shell_exec()调用处理脚本,但不等待它们完成,导致队列未完成。
队列运行脚本:
#!/usr/bin/php
<?php
// Loop through database and find jobs to be done
shell_exec("nohup $command > /dev/null 2> /dev/null & echo $! &");
?>
直接在命令行运行作业脚本工程和创建PDF。
有关如何解决此问题的任何想法?或者更好的方式来运行一个流程队列?
你为什么使用** nohup **和**&**?只需在前台运行你的命令! – inVader 2012-07-17 14:11:46
你甚至关心答案吗? – inVader 2012-07-20 14:36:42