在MYSQL / PHP中设置最长执行时间

时间:2013-08-15 13:39:57

标签: php mysql execution

我有一个XML文档,大约有48,000个孩子(约50MB)。我运行一个INSERT MYSQL查询,为每个子项创建新条目。问题是由于它的大小需要花费很多时间。执行后我收到了

Fatal error: Maximum execution time of 60 seconds exceeded in /path/test.php on line 18

如何将最长执行时间设置为无限制?

由于

5 个答案:

答案 0 :(得分:11)

您可以通过在PHP代码中设置set_time_limit来设置它(设置为0表示无限制)

set_time_limit(0);

或直接在php.ini

中修改max_execution_time的值
;;;;;;;;;;;;;;;;;;;
; Resource Limits ;
;;;;;;;;;;;;;;;;;;;

; Maximum execution time of each script, in seconds
; http://php.net/max-execution-time
; Note: This directive is hardcoded to 0 for the CLI SAPI
max_execution_time = 120  

或者用ini_set()

更改它
ini_set('max_execution_time', 120); //120 seconds

但请注意,对于第3个选项:

  

max_execution_time

     

在safe中运行时,无法使用ini_set()更改此设置   模式。唯一的解决方法是关闭安全模式或更改   php.ini中的时间限制。

来源www.php.net

答案 1 :(得分:0)

将它放在脚本的顶部:

ini_set('max_execution_time', 300);

这将使它成为5分钟。

答案 2 :(得分:0)

您可以在应用程序的开头使用ini_set。

ini_set('max_execution_time', *number of seconds here*); //300 seconds = 5 minutes

答案 3 :(得分:0)

您可以在MYSQL / PHP中设置最长执行时间。它很容易。

要在单个PHP文件中设置最长执行时间,请将此代码放在第一个打开php标记之后。

ini_set(‘max_execution_time’, 0)

在php.ini文件中设置最长执行时间。您可以根据自己的要求进行设置。

max_execution_time=360 //360 seconds = 6 minutes

在htaccess文件中设置最长执行时间。

php_value max_execution_time 0

您也可以read step by step here

答案 4 :(得分:0)

Apache Web Server的最长执行时间为300秒(5分钟),因此,如果脚本很长,则必须选择

  1. 您的脚本最多可以执行5分钟 打开php.ini文件并更改 max_execution_time = (seconds)例如max_execution_time = 300

2。如果脚本需要5分钟以上,则应首先更改Httpd.conf文件(Apache配置文件)

TimeOut (number of seconds you want)

以及php.ini max_execution_time = (number of seconds you want)