Установите тайм-аут для конкретной функции / блока кода (не весь скрипт)?

У меня есть php-скрипты, которые вызывают скрипты perl, чтобы делать разные вещи, и иногда я получаю их там, где они просто продолжаются и не возвращаются, это основано на переменной, которая передается в perl-скрипт, и я много делаю из разных по порядку, поэтому я не могу действительно отлаживать его напрямую, так как у меня нет ответа от perl …

Мне бы очень хотелось просто установить функцию php или блок кода на тайм-аут через определенное количество секунд. Я искал это, но пока не нашел ничего о том, как это сделать,

Я думал, что что-то вроде этого может работать, но я не думаю, что он динамически обновлял переменную времени $, но, может быть, есть способ заставить это работать? Любые советы приветствуются

$time = time(); $timeout = $time + 5; //just as an example do { // do stuff } while ($time < $timeout) 

Лучше всего будет использовать proc_open, спать для вашей тайм-аута, а затем вызвать proc_terminate, если процесс еще не завершился.

См. http://us3.php.net/manual/en/book.exec.php для получения подробной информации о семье proc_ *.

Ну, я не уверен, что у этого вопроса будет ответ, основанный на том, как я его попросил, поэтому то, что я собираюсь делать, – это вызов perl, где php не ждет ответа и имеет perl запись вывода на текстовый файл, затем прочитайте php после указанного количества секунд, я думаю, что это самый простой способ сделать это, его просто для небольшого приложения, которое я запускаю на локальном сервере