如何在调用“exit”后执行剩余的php代码?

时间:2012-07-15 04:55:09

标签: php xmlhttprequest

客户端如何向服务器发送请求以触发执行,服务器立即发送响应然后执行请求的代码?与此类似:

echo 'the execution is starting';
exit;
execution_function(); // <--- is it possible to this function being executed after exit 

我希望响应立即生效,以便客户端在服务器执行请求时可以执行其他操作。

4 个答案:

答案 0 :(得分:8)

您可以使用register_shutdown_function()设置一个回调函数,该函数将在PHP退出时执行。

答案 1 :(得分:2)

您可以在exit(),die()之后使用register_shutdown_function(), 甚至您也可以使用此功能将致命错误注册到错误注册日志中。安静

答案 2 :(得分:0)

我不认为可以做到。

通常我所做的是将exec()调用到另一个PHP文件中的另一个外部脚本,其中包含“&gt; / dev / null&amp;”在命令的最后和退出()之后。

这样当调用脚本运行时,调用exec()的脚本将不会运行。

答案 3 :(得分:-1)

这是不可能的,原因是当你调用exit函数时,PHP会在此之后停止处理任何内容。正常用法是,如果脚本检测到错误,并且达到成功条件操作的可能性为零,则脚本将停止运行。

如果您希望脚本继续运行并执行操作,请在退出功能之前放置您希望它执行的操作。