限制执行 PHP 行的时间
Limit time to execute a PHP line
我有一个函数可以在将 URL 放入我的页面之前检查它是否有效,我使用
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_NOBODY, true);
curl_exec($ch);
$retcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
这样做。但是,最近发生了一个外部站点无法正常工作并且一直在加载的情况,将这个问题反映到我的站点,因为它卡在了最后一行代码,最终以超时致命错误结束。
怎么能我告诉服务器只尝试 curl_getinfo 几秒钟,如果时间太长就 return false?它不必 return 一个无法捕获的超时错误,它会危及我的页面,而不仅仅是隐藏 URL.
参见 http://php.net/manual/en/function.curl-setopt.php 并使用 CURLOPT_CONNECTTIMEOUT。
我有一个函数可以在将 URL 放入我的页面之前检查它是否有效,我使用
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_NOBODY, true);
curl_exec($ch);
$retcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
这样做。但是,最近发生了一个外部站点无法正常工作并且一直在加载的情况,将这个问题反映到我的站点,因为它卡在了最后一行代码,最终以超时致命错误结束。
怎么能我告诉服务器只尝试 curl_getinfo 几秒钟,如果时间太长就 return false?它不必 return 一个无法捕获的超时错误,它会危及我的页面,而不仅仅是隐藏 URL.
参见 http://php.net/manual/en/function.curl-setopt.php 并使用 CURLOPT_CONNECTTIMEOUT。