重脚本文件的php脚本执行

时间:2012-07-14 06:31:44

标签: php apache codeigniter

我有一个项目,我在php框架中开发名为codeigniter。我有一个脚本文件,为我的客户端创建30,0000 pdf的db记录。问题是我必须以块的形式运行代码。因为它会产生错误,有些时间服务器超时,有些时间内存不同步,我通过更改php.ini来修复所有错误但是徒劳无功。因为我仍然必须使用7000的设置限制来制作块的pdf。如果我增加限制偏移它无法运行并给我错误。很难坐下30,0000记录并在其上生成pdf。我只想要在一个块中运行。请给我解决方案。我真的需要它。提前谢谢。

1 个答案:

答案 0 :(得分:1)

我建议为此使用单独的shell脚本,或者如果您坚持使用PHP脚本,请使用它,就像使用shell脚本一样。你可以“解雇并忘记”脚本,因此它可以在后台运行,不会影响其他任何内容,也不会占用Web应用程序的资源。那将是这样的:

shell_exec('yourscript.sh > /dev/null 2>/dev/null &');

或使用php脚本

shell_exec('php yourscript.php > /dev/null 2>/dev/null &');

请注意,在上面,我将stdout和stderr重定向到null。如果你不是他们,你宁愿将他们重定向到其他地方。