Ну, вы можете запустить $start=microtime(true)
, который будет возвращать метку времени. Затем вы можете просто продолжать проверять microtime(true)
и вычитать это из вашего начального времени, чтобы получить количество секунд с момента выполнения.
Но нет, вы не можете «поймать» скрипт как его завершающий, потому что запрос слишком длинный. Вы можете попытаться сделать что-нибудь в последнюю минуту в обработчике завершения работы, но я не уверен, что PHP выполнит это.
Похоже, раньше была функция, которая делает именно то, что вы хотите, connection_timeout () , но она устарела и удалена. Однако не знаю, есть ли какая-нибудь замена для этого.