Я продолжаю получать эту ошибку PHP:
Неустранимая ошибка: превышено максимальное время выполнения 300 секунд
- Установите переменную $ _SERVER при вызове PHP из командной строки?
- Прекратить выполнение PHP для цикла while или в командной строке с нажатием клавиши?
- PHP Получить пользовательский ввод без необходимости нажатия клавиши возврата
- При использовании PHP CLI - APC вылетает apache - apc_fcntl_lock не удалось выполнить errno: 6
- Выполнение нескольких одновременных скриптов php из CLI
Я попытался установить my max_execution_time
и мои настройки max_input_time
в php.ini (оба apache и cli) до 0
, -1
и 4000
секунд каждый.
И я все еще получаю сообщение об ошибке:
Неустранимая ошибка: превышено максимальное время выполнения 300 секунд
Кроме того, мой скрипт работает более 300 секунд, прежде чем я получу это сообщение
Я запускаю скрипт через командную строку.
Я также проверил свой phpinfo()
чтобы посмотреть, какой php.ini
я использую.
Еще более интересным я пробовал установить max_execution_time
и max_input_time
настройки на 5 секунд, и мой скрипт будет работать за 5 секунд, прежде чем я получу:
Неустранимая ошибка: превышено максимальное время выполнения 300 секунд
В начале вашего скрипта вы можете добавить.
ini_set('MAX_EXECUTION_TIME', -1);
Если вы используете WAMP, перейдите по ссылке:
Увеличьте max_execution_time
в php.ini
затем перейдите к
C:\wamp\apps\phpmyadmin3.4.10.1\libraries
(изменить путь в соответствии с вашей установкой)
откройте config.default.php
и измените значение для $cfg['ExecTimeLimit']
на 0:
$cfg['ExecTimeLimit'] = 0;
Это решит проблему импорта PhpMyAdmin.
Пользователи Xampp
xampp\phpMyAdmin\
$cfg['ExecTimeLimit'] = 300;
xampp\phpMyAdmin\libraries
в xampp\phpMyAdmin\libraries
для config.default.php
$cfg['ExecTimeLimit'] = 300;
Редактировать:
В соответствии с @brandozz возможно добавить $cfg['ExecTimeLimit'] = 0;
в файл config.inc.php, если он не существует. Если это работает для других людей, прокомментируйте здесь, и я отредактирую ответ.
Я столкнулся с подобной ситуацией, и выясняется, что Codeigniter (используемая мной инфраструктура PHP) на самом деле устанавливает свой собственный лимит времени:
В system / core / Codeigniter.php, строка 106 в версии 2.1.3 появляется следующее:
if (function_exists("set_time_limit") == TRUE AND @ini_get("safe_mode") == 0) { @set_time_limit(300); }
Поскольку другого способа избежать изменения основного файла не было, я удалил его, чтобы разрешить конфигурацию через php.ini, а также дать бесконечное максимальное время выполнения запроса CLI.
Однако я рекомендую записать это изменение где-нибудь в случае будущих обновлений версии CI.
В своем скрипте попробуйте следующее:
set_time_limit(1200);
Это правильный ответ:
идти к
c:\wamp\apps\phpmyadmin3.4.10.1\libraries\config.default.php
найти и установить
$cfg['ExecTimeLimit'] = 0;
перезапустите все службы и выполните.
перейдите в xampp / phpmyadmin / libraries / config.default.php
и внести следующие изменения
from $cfg['ExecTimeLimit'] = '300′; to $cfg['ExecTimeLimit'] = '0′;
Время выполнения CLI по умолчанию PHP бесконечно.
Это устанавливает максимальное время в секундах, в течение которого сценарий может запускаться до его завершения синтаксическим анализатором. Это помогает предотвратить плохо написанные скрипты от привязки сервера. Значение по умолчанию – 30. При запуске PHP из командной строки значение по умолчанию равно 0.
http://gr.php.net/manual/en/info.configuration.php#ini.max-execution-time
Проверьте, запущен ли PHP в безопасном режиме, потому что он игнорирует все настройки времени выполнения при этом.
ПОЛЬЗОВАТЕЛИ WAMP:
1) Перейти к C: \ wamp \ apps \ phpmyadmin
2) Открыть config.inc
3) Добавить $ cfg ['ExecTimeLimit'] = '3600'; к файлу.
4) Сохраните файл и перезапустите сервер.
Этот файл перезаписывает php.ini и будет работать для вас!
В моем случае, когда я столкнулся с этой ошибкой в Phpmyadmin, я попробовал MySQL-Front и успешно импортировал свою БД.
Примечание. Вы можете использовать предоставленные решения по этому вопросу для решения своей проблемы в Phpmyadmin.
Если приведенные выше ответы не будут работать, попробуйте проверить свой код. По моему опыту, наличие бесконечного цикла также вызовет эту проблему. Проверьте свою позицию if.
В Codeignitor версии 3.0.x система / core / Codeigniter.php не содержит ограничения по времени, а также вставляет
ini_set('MAX_EXECUTION_TIME', -1);
не будет работать, поскольку codeignitor переопределит это со своей собственной функцией set_time_limit (). Поэтому либо вам нужно удалить эту функцию из codeignitor, либо просто вы можете вставить
set_time_limit('1000');
в начале файла php, если вы хотите изменить его на 1000 секунд. Установите время на 0 (ноль), если вы хотите запустить его столько, сколько захотите.
На Xampp в php.ini вы также должны проверить mysql.connect_timeout. Так, например, измените его на:
mysql.connect_timeout = 3600
Это время будет всегда считаться в секундах (так 1 час в моем примере)
MAMP USERS, редактирование php.ini решает это – есть строка:
max_execution_time = 30; Максимальное время выполнения каждого скрипта в секундах
установив это на большее значение.
файл находится в php / php5.6.25 / conf / php.ini (очевидно, вам нужно смачивать файл для используемой версии php, вы можете узнать это из настроек MAMP.
Вы можете установить ограничение по времени:
ini_set('max_execution_time', 1000000000000000);