VPS上搭建php网站后,php.ini 中限定程序的最长执行时间是 30 秒,这是由 php.ini 配置文件中的 max_execution_time 变量指定,倘若你有一个需要颇多时间才能完成的程序代码,代码会由于超时而执行失败,例如要发送很多电子邮件给大量收件者,或者要进行繁重的数据分析工作,云服务器会在 30 秒后强行中止正在执行的程序,如何解决这个问题呢。
PHP脚本执行超时的设置时间有下面这样一些方法:
一、在php.ini里面设置 max_execution_time = 1800;
二、通过PHP的ini_set 函数设置 ini_set(“max_execution_time”, “1800”);
三、通过set_time_limit 函数设置 set_time_limit(1800) ;
php 脚本设置最大执行时间(无限制),忽略关闭浏览器:
ignore_user_abort(true); //关掉浏览器,PHP脚本也可以继续执行.
set_time_limit(0); // 通过set_time_limit(0)可以让程序无限制的执行下去
PHP设置脚本最大执行时间的三种方法:
1、在php.ini里面设置
max_execution_time = 120;
2、通过PHP的ini_set函数设置
ini_set(“max_execution_time”, “120”);
3、通过set_time_limit 函数设置
set_time_limit(120);
以上几个数字设置为0则无限制,脚本会一直执行下去,直到执行结束。
所以,需要长时间执行的脚本,一般在php代码开头处添加如下代码就可以了
set_time_limit(0);
ini_set(‘memory_limit’,’3072M’); // 临时设置最大内存占用为3G
set_time_limit(0); // 设置脚本最大执行时间 为0 永不过期