用php验证链接

mik*_*ike 1 php

谁能告诉我它是否有可能验证与PHP的链接?通过验证,我的意思是检查链接是否处于活动状态,并且不仅仅是链接的实际格式.

Yac*_*oby 8

您需要执行HEAD请求并检查响应.200表示请求成功.您可以在此处找到其他可能需要视为有效的其他内容.(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);
Run Code Online (Sandbox Code Playgroud)