Установите максимальное время выполнения для exec () специально

Можно ли установить максимальное время выполнения функции exec($command) ? Иногда выполнение моей $command длится слишком долго, останавливаясь через 1 минуту и ​​представляя эту ошибку:

Неустранимая ошибка: максимальное время выполнения 60 секунд превышено в C: \ xampp \ htdocs \ files.php в строке 51

Как увеличить максимальное время выполнения команды exec() ?

  if (allow()) { exec($command); if (file_exists($file)) { //exec($makeflv); echo '<script language="javascript" type="text/javascript">window.top.window.aviout(1);</script>'; } else { echo $error; } } else { echo $error; } 

См. http://php.net/manual/en/function.set-time-limit.php

 set_time_limit($seconds) 

Если $second установлено в 0 , лимит времени не наложен. Обратите внимание, что вы должны быть осторожны с удалением ограничения по времени. Вы не хотите, чтобы бесконечные петли медленно ели все серверные ресурсы. Высокий предел, например 180 , лучше, чем без ограничений.

В качестве альтернативы вы можете настроить настройку времени только для определенных блоков кода и сбросить ограничение по времени после выполнения критического кода времени, например

 $default = ini_get('max_execution_time'); set_time_limit(1000); ... some long running code here ... set_time_limit($default); 

вы можете использовать ini_set() следующим образом:

 ini_set('max_execution_time', 0); 

Установка его на 0 приведет к тому, что ваш скрипт будет работать вечно в соответствии с документацией ini-директивы .

В .htaccess вы можете установить следующие значения:

 php_value max_execution_time 1000000 php_value max_input_time 1000000 

Вы также можете попробовать это в верхней части вашего PHP-скрипта:

 set_time_limit(0);