在没有cronjobs的背景中运行沉重的php文件

时间:2013-11-24 21:16:19

标签: php

如何在提交表单后在后台运行php文件。加载必须在后台进行,因为它通常需要很长时间。

基本上它就像运行cronjob一样,除了我想手动触发它并使用我的浏览器。

2 个答案:

答案 0 :(得分:1)

有几种方法可以做到这一点。

  1. 尝试在脚本中将ignore_user_abort设置为TRUE 如果更改为TRUE脚本将在客户端中止其连接后终止。

  2. 查看popen()pclose()。你可以这样做:

    pclose(popen("start php /path/to/myscript.php", "r"));

  3. 您可以通过system()exec()来启动单独的PHP流程。像这样:

    system('php /path/to/myscript.php >/dev/null 2>&1 &');

答案 1 :(得分:0)

使用AJAX启动请求。浏览器将在等待响应时继续运行。您甚至可以在请求完成时显示弹出窗口或某些信息,但您不必这样做。