set_time_limit

(PHP 3, PHP 4, PHP 5)

set_time_limit - ограничивает время выполнения.

Описание

void set_time_limit (int seconds)

Устанавливает время в секундах, в течение которого скрипт может работать. Если это значение достигнуто, скрипт возвращает фатальную ошибку. По умолчанию лимит - 30 секунд или, если оно существует, значение max_execution_time, определённое в файле конфигурации. Если seconds имеет значение 0, лимита нет.

При вызове set_time_limit() рестартует счётчик таймаута с нуля. Иначе говоря, если таймаут по умолчанию 30 секунд, прошло 25 секунд выполнения скрипта и сделан такой вызов set_time_limit(20), скрипт будет работать 45 секунд перед таймаутом.

set_time_limit() не действует, если PHP запущен в режиме safe mode. Нет иного выхода, кроме отключения safe mode или изменения лимита времени в файле конфигурации.

Примечание: функция set_time_limit() и директива конфигурации max_execution_time влияют только на время выполнения самого скрипта. Любое время, затраченное на деятельность вне выполнения скрипта, такую как системные вызовы с помощью system(), функция sleep(), запросы к БД etc. не включается при подсчёте максимального времени работы скрипта.

Пример испльзования set_time_limit:
set_time_limit(20);

while ($i<=10)
{
 echo "i=$i ";
 sleep(100);
 $i++;
}
Выведет:
i=0 i=1 i=2 i=3 i=4 i=5 i=6 i=7 i=8 i=9 i=10



Смотрите также:
Описание на ru2.php.net
Описание на php.ru