在php中通过url运行后台任务

时间:2015-09-29 10:32:18

标签: php

我想在用户提交表单后调用流程。我正在使用codeigniter,因此将从url(www.example.com/index.php/update_users)调用该进程。我已经为shell_exec()读取了线程“php execute a background process”的代码,但它给了我空白输出,所以我也无法调试它。有没有其他方法可以这样做?或者我们如何运行shell_exec。我不想执行任何linux命令,所有我需要做的就是在后台调用一个url,以便我可以静默更新我的数据库,因为如果在浏览器中运行它需要花费太多时间(大约45秒)。

1 个答案:

答案 0 :(得分:0)

您可能希望将exec的输出通过管道传输到日志文件中;

exec('/usr/bin/myprogram > /tmp/myprogram-debug.log 2>&1');

然后,您可以在完成后从那里读取它(或使用tail -f(tail -f /tmp/mypgrogram-debug.log

在旅途中记录它