@dj_vadim

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

Есть скрипт который работает с API некоего сервера, выбирает много данных постепенными запросами, затем по каждому блоку данных выбирает дочерние данные и формирует массив в котором потом прозводится несколько операций.
Скрипт выполняется всегда 300 секунд, а времени нужно больше, хотя бы 10 минут. Попытки увеличения или снятия ограничения не привели ни к чему. Всё равно возникает ошибка
Fatal error: Maximum execution time of 300 seconds exceeded in C:\OpenServer\domains\........
Вот что я пробовал делать:
В php.ini
max_execution_time = 86400
max_input_time = 86400

В начале скрипта:
set_time_limit(0);
ini_set('MAX_EXECUTION_TIME', 86400);
ini_set('MAX_EXECUTION_TIME', -1);

Работаю на CodeIgniter 2 под OpenServer 4.8.8 и php 5.4
  • Вопрос задан
  • 13553 просмотра
Решения вопроса 1
@dj_vadim Автор вопроса
Вопрос с меткой CodeIgniter
В папке /system/core/CodeIgniter.php на 127 строке есть внутренне ограничение set_time_limit(300) которое было не так легко найти)
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 4
Melkij
@Melkij
PostgreSQL DBA
Запускайте такие скрипты в консоле.
Для CLI SAPI лимит времени выполнения отключен всегда.
Ответ написан
@Silm
Смотрите настройки апача или nginx. Смотря что там у вас.
Ответ написан
Комментировать
HeadOnFire
@HeadOnFire
PHP, Laravel & WordPress Evangelist
Лимиты есть и у php, и у сервера (nginx/apache/etc). Вы поменяли в одном месте только.
Ответ написан
Пиши в базу, потом другим скриптом работай с ней.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы