[PHP]Maximum execution time of 30 seconds exceeded

前言

在使用PHP渲染页面页面的时候,如果程序处理的时间特别久,超过配置文件(php.ini)设置的超时时间,就会出现如下提示:

Maximum execution time of 30 seconds exceeded

例如:导入大量数据到数据库中;请求资源时间过长……

问题

PHP程序超时发生错误提示怎么办?

方法

  • 直接修改配置文件(php.ini)[超时]
#默认的最大执行时间是30s,可根据自己的需求做修改
#如果是0,即永不过期
max_execution_time = 30;
  • 间接修改配置信息[超时]
    在php执行文件中加入如下代码:
set_time_limit(0);
  • 刷新输出缓冲[内存超限]
    1. 在循环当中做延迟执行:加入函数sleep(time)
    2. 输出缓冲:同时使用ob_flush()flush()函数将数据发送到浏览器
<?php

for ($i=0; $i < 10000; $i++) {
	echo "hello ".printf('%05s',$i).'<br/>';
	ob_flush();
	flush();
}
知识共享许可协议
本作品由SeayXu创作,采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可。
基于http://www.cnblogs.com/seayxu上的作品创作。
可自由转载、引用,但需署名作者且注明文章出处,并以相同方式共享。
posted @ 2016-04-27 12:18  seayxu  阅读(196)  评论(0编辑  收藏  举报