我在执行时间 php 代码方面运行了很长时间,我通常使用 mozzila 运行它,同时做其他事情并使用 chrome。
我想知道正在运行的代码会发生什么,以及当我关闭浏览器或它崩溃时如何,因为无论如何所有代码都应该已经在服务器上执行。
我在执行时间 php 代码方面运行了很长时间,我通常使用 mozzila 运行它,同时做其他事情并使用 chrome。
我想知道正在运行的代码会发生什么,以及当我关闭浏览器或它崩溃时如何,因为无论如何所有代码都应该已经在服务器上执行。
默认情况下,PHP 进程在下次尝试将输出发送到客户端时会被拆除¹,尽管您可以使用ignore_user_abort
. 有关其他相关信息,请阅读有关连接处理的手册部分。
¹ 请注意,在 PHP 或 Web 服务器存在输出缓冲的情况下,“回显某事”不一定等于“输出发送到客户端”;见flush
。
这很大程度上取决于服务器的设置。例如,如果您使用 gzip 运行并关闭浏览器,它仍然可以执行,
理想情况下,调用 php 的 httpd 应该发送信号停止,但它并不总是发生
然后 PHP 本身可以通过使用 ignore_user_abort 来控制它提供的信号