PHP 脚本在 60 秒后停止工作


PHP Script stops working after 60 seconds

我正在尝试创建一个表单只是为了弄乱,我这个表单有两个部分。第一个输入是要计数的数字,第二个输入是以秒为单位的延迟间隔。

我有两种方法可以做到这一点。一个是做这个客户端,另一个是获取变量并通过php发送它们。这将允许用户离开网站并使脚本仍在工作。

服务器端的问题是,60 秒后,PHP 脚本停止工作。表单通过 AJAX 发送。这是我的PHP代码。我也在共享主机上,无法编辑 PHP.ini。

$amount = $_POST["amount"];
$time = $_POST["time"];
date_default_timezone_set('America/Los_Angeles');
$x = 0;
while($x < $amount) {
    echo $x;
    $x++;
    sleep($time);
} 
echo ("Counted to " . $x); 

您可以在 php 文件上使用最大执行时间,在 php 文件中添加此行。

ini_set('max_execution_time', 300); //300 seconds = 5 minutes
您可以使用

set_time_limit设置最大执行时间,0表示没有时间限制(不对CGI建议,因为您的Web服务器,apache/iis仍然有时间限制)

如果要更改所有 PHP 脚本的执行时间限制,可以在 PHP 中更改设置max_execution_time.ini