前言
在使用PHP
渲染页面页面的时候,如果程序处理的时间特别久,超过配置文件(php.ini)设置的超时时间,就会出现如下提示:
Maximum execution time of 30 seconds exceeded
例如:导入大量数据到数据库中;请求资源时间过长……
问题
PHP程序超时发生错误提示怎么办?
方法
- 直接修改配置文件(php.ini)[超时]
#默认的最大执行时间是30s,可根据自己的需求做修改
#如果是0,即永不过期
max_execution_time = 30;
- 间接修改配置信息[超时] 在php执行文件中加入如下代码:
set_time_limit(0);
- 刷新输出缓冲[内存超限]
- 在循环当中做延迟执行:加入函数
sleep(time)
- 输出缓冲:同时使用
ob_flush()
和flush()
函数将数据发送到浏览器
- 在循环当中做延迟执行:加入函数
<?php
for ($i=0; $i < 10000; $i++) {
echo "hello ".printf('%05s',$i).'<br/>';
ob_flush();
flush();
}