【发布时间】:2014-10-30 05:38:03
【问题描述】:
如果向服务器发出 ajax 请求以在后端运行脚本并且用户关闭了浏览器。如果该脚本启动并处于中间进程中,它会在后端完成执行吗?
【问题讨论】:
如果向服务器发出 ajax 请求以在后端运行脚本并且用户关闭了浏览器。如果该脚本启动并处于中间进程中,它会在后端完成执行吗?
【问题讨论】:
NO..,PHP 脚本不会终止执行。
YES..它会完成它的执行。
一旦启动 php 脚本,它将完成执行然后停止。
因为 php 运行在服务器端,它不会被客户端简单的事件如browser window close 中断。
但是客户端将无法看到输出。
例如:
试试这个代码:
//File Name: xyz.php
<?php
$fp=fopen("output.txt","w");
$count=0;
for($count=0;1;$count++){
//Infinite loop
fwrite($fp,"".PHP_EOL."".$count."");
sleep(1);
if ($count>=60) break;
}
fclose($fp);
?>
现在测试这个文件,即使在您关闭浏览器窗口后,它仍会继续在该输出文件中打印 (output.txt)。
【讨论】:
php 工作。所以不知道这些新功能。但是,如果您可以尝试让我知道这将非常有帮助。
php 脚本时,该选项才会被磨练;在这种情况下,如果您关闭终端,脚本将停止执行。至少这是我从文档中可以理解的。所以对于浏览器,该选项不应该影响。
嗯,PHP 是服务器端,它计算所有代码,然后将结果发送到客户端。所以我猜即使你关闭浏览器它也会完成脚本执行。
【讨论】: