谁能告诉我是否可以用 php 验证链接?通过验证,我的意思是检查链接是否处于活动状态,并且不仅仅是链接的实际格式。
您需要执行 HEAD 请求并检查响应。 200表示请求成功。还有其他的可以在这里找到 http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html您可能希望将其视为有效。 (301 和 302 重定向到我的脑海)
如果你使用 cURL,你可以使用这样的东西
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, TRUE); //Include the headers
curl_setopt($ch, CURLOPT_NOBODY, TRUE); //Make HEAD request
$response = curl_exec($ch);
if ( $response === false ){
//something went wrong, assume not valid
}
//list of status codes you want to treat as valid:
$validStatus = array(200, 301, 302, 303, 307);
if( !in_array(curl_getinfo($ch, CURLINFO_HTTP_CODE), $validStatus) ) {
//the HTTP code is not valid. The url is not valid
}
curl_close($ch);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)