PHP - 如何检查函数在 30 秒左右没有提供任何响应


Php - how to check if a function doesn't provide any response in 30 secs or so

我在用户定义的函数中使用dns_get_record,并在用户定义的函数中执行一些过程。有时dns_get_record域已死,则需要很长时间来处理。

如果整个过程花费超过 30 秒左右,有没有办法 Php 函数可以返回一个值。基本上,如果用户定义的函数总执行时间超过 30 秒,我想将控制权返回给主程序。如何在 PHP 中执行此操作?

正如 v2solutions.com 所建议的,您可以使用set_time_limit()但整个过程将以致命错误终止。

另一方面,您可以使用分叉或启动完全新建进程(替代选项)或新线程,并从主循环监视此子进程/线程。