我今天只是想知道当用户退出网页(加载时)脚本是否终止。它turns out that yes,除非您另外设置。那么,考虑到这一点,这个脚本何时完成?
// Don't stop script even when the user closes the window
ignore_user_abort();
set_time_limit(0);
// Infinite loop (normally aborted when the user closes the window)
while(1) {
sleep(1);
}
我最好的选择是,当PHP和/或服务器关闭/打开时。但是,在生产系统中,这只能在紧急情况下进行。所以问题是,什么时候脚本通常会被结束?通常我的意思是不采取任何行动来结束该特定脚本。没有sleep()
的相同脚本不会成为托管公司的潜在危险吗?使用稍微昂贵的操作设置其中一个,并且该脚本的服务器是100%。
答案 0 :(得分:0)
以下是我的想法:
由于同样的原因,某些托管在disabled_functions列表中也有ignore_user_abort / set_time_limit。
更新:将多个更改为多个。猜猜我使用的主机与人们通常使用的主机截然不同。