电脑计算机论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2909|回复: 0

Ecshop Maximum execution time of 30 seconds exceeded的解决方案

[复制链接]
admin 发表于 2010-12-1 22:32:13 | 显示全部楼层 |阅读模式
由于近日做的ecshop程序中涉及到的循环比较多且处理的情况较复杂,所以在运行程序时出现执行超时提示如下:
Fatal error: Maximum execution time of 30 seconds exceeded in D:\php\AppServ\www\sum3\test.php on line 3

通过自己实验,找到以下解决方案给大家分享一下:
  把temp中caches清理一下,然后将 htaccess.txt  改成.htaccess就好了.

网上搜到的方法入下( 但开始的时候我试了,不管用,也许是我的情况比较特殊吧)

这个错误是说你的php
执行时间越过了配置文件中设置的最大执行时间30秒钟,这不是你的程序本身存在的问题,而 是系统的配置文件问题,如果你的网速快的话,可能再执行一次就不会出现这种错误了,不过
有了出现这种问题也可以进行一定的修改,方法有三种:
1.修改php的配置文件,找到php.ini文件,它一般应该放在你的C:\WINDOWS目录下,然后找到
max_execution_time = 30 ;//设置成你想要的值,
单位是秒

这一行,这就是设置的执行时间最大值为30秒,你可以对这个值进行一下修正,改为你的期望值。(也可以直接设置成:max_execution_time = 0
2.使用ini_set()函数,不是所有人都能修改php.ini文件的,那么你可以使用这个函数来改变你的最大执行时间限制值,如:
ini_set('max_execution_time', '100');
则设置为100秒,你也可以设置为0,那么就是不限制执行的时间。

3.使用set_time_limit()函数,set_time_limit(20)则表示最大执行时间加上20秒,但如果在php执行安全模式时,set_time_limit()将不会有结果,除非你用了第一种方法。
以下是部分讲解:
set_time_limit --- 限制最大的执行时间
set_time_limit
(PH3 , PHP4)

set_time_limit --- 限制最大的执行时间

语法 : void set_time_limit (int seconds)

说明 :

设定一个程式所允许执行的秒数,如果到达限制的时间,程式将会传回错误。它预设的限制时间是30秒,max_execution_time的值定义在结构档案中(在PHP3中叫做php3.ini,在PHP4则叫做php.ini),如果将秒数设为0,表示无时间上的限制。

当呼叫此函式时,set_time_limit( )会从零重新开始计算最长执行的时间,也就是说,如果最长执行时间为预设的30秒,而在呼叫此函式set_time_limit(20)之前已花了25秒来执行程式,则程式最长执行的时间将会是45秒。

注意 : 当PHP是执行在安全模式时,set_time_limit( )将不会有结果,
除非是关闭安全模式或是修改结构档案中(在PHP3中叫做php3.ini,在PHP4则叫做php.ini)的时间限制。

您需要登录后才可以回帖 登录 | 注册

本版积分规则


QQ|手机版|小黑屋|电脑计算机论坛 ( 京ICP备2022023538号-1 )

GMT+8, 2024-5-20 10:12 , Processed in 0.071454 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表