设置PHP最长运行时间

Posted 码农编程进阶笔记

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了设置PHP最长运行时间相关的知识,希望对你有一定的参考价值。

通常来说,默认的php程序最大运行时间是30s,如果你的程序运行超过这个时间限制,那么会有类似Maximum execution time of 30 seconds exceeded的报错。

有几种解决办法:

首先先检查是不是你的在做一些傻事,从而消耗了大量的CPU资源及时间,如果确实需要程序长时间运行才能得出结果,那么可以

1> 在php.ini中增加运行时间:

max_execution_time=300

2> 在PHP文件中添加如下代码

ini_set(‘max_execution_time‘, 300); //300 seconds = 5 minutes

3> 使用.htaccess文件来增加运行时间:

<IfModule mod_php5.c>
    php_value max_execution_time 300
</IfModule>

其他一些常见配置参考:

<IfModule mod_php5.c>
    php_value post_max_size 5M
    php_value upload_max_filesize 5M
    php_value memory_limit 128M
    php_value max_execution_time 300
    php_value max_input_time 300
    php_value session.gc_maxlifetime 1200
</IfModule>

如果你的环境是wordpress,那么请在config.php中,添加:

define(‘WP_MEMORY_LIMIT‘, ‘128M‘);

如果你使用了其他一些框架,可以修改

ini_set(‘memory_limit‘, ‘128M‘);

默认情况下,php.ini 中配置的最大执行时间是 30 秒,这是由 php.ini 中的 max_execution_time 变量指定的。如果我们有一个需要花费很多时间的工作,比如要发送大量邮件,或者要进行庞大的数据统计分析工作。即使任务没有执行完毕,服务器也会在 30 秒后强行中止正在执行的程序。

1,修改最长执行时间的两种方法
(1)直接修改 php.ini 中 max_execution_time 的数值。
技术分享图片

(2)如果没权限修改 php.ini 文件,或者我们想对某些页面进行单独设置。那么也可以在 PHP 程序页面中进行设置,代码如下(数值 0 表示没有执行时间的限制)。
1
ini_set(‘max_execution_time‘, ‘0‘);

2,如果使用IIS服务器,记得还要修改“活动超时”时间
如果是在 IIS 服务下运行 PHP 程序,会发现根据前面的方法修改后,执行长时间的操作还是会报错。错误信息如下:
HTTP 错误 500.0 - Internal Server Error
C:websoftphpphp-cgi.exe - FastCGI 进程超过了配置的请求超时时

技术分享图片

解决办法:IIS -> FastCGI 设置-> 双击"php-cgi.exe" ->"活动超时" ,根据需求将这个值提高。
技术分享图片

原文出自:www.hangge.com  转载请保留原文链接:http://www.hangge.com/blog/cache/detail_1369.html
 










以上是关于设置PHP最长运行时间的主要内容,如果未能解决你的问题,请参考以下文章

PHP 设置代码的最长执行时间

SQL 语句超过 PHP 中的最长时间,但在 phpMyAdmin 中立即运行

运行/调试你的PHP代码

Drupal 6 视图 2:PHP 片段

在一个无序整数数组中,找出连续增长片段最长的一段, 增长步长是1。Example: [3,2,4,5,6,1,9], 最长的是[4,5,6]

如何优化 sql 查询以避免在没有 php.ini 或设置时间限制的情况下执行最长时间 [关闭]