PHP檢測鏈接是否存在的代碼實(shí)例分享

字號(hào):


    在PHP中,檢查某個(gè)鏈接是否存在,有兩個(gè)方法,一個(gè)是使用curl,另外一個(gè)是獲得HTTP的header的響應(yīng)碼,如果是200的則是OK,如果是404的話就找不到了,例子如下:
    1) 使用get_headers: 
    <?php 
    $url = "http://www.abc.com/demo.jpg"; 
    $headers = @get_headers($url); 
    if($headers[0] == 'HTTP/1.1 404 Not Found') 
    { 
     echo "URL not Exists"; 
    } 
    else
    { 
     echo "URL Exists"; 
    } 
    ?> 
    get_headers中有第2個(gè)參數(shù),是true的話,結(jié)果將會(huì)是個(gè)關(guān)聯(lián)數(shù)組
    2) 使用CURL 
      <?php 
    $url = "http://www.domain.com/demo.jpg"; 
    $curl = curl_init($url); 
    curl_setopt($curl, CURLOPT_NOBODY, true); 
    $result = curl_exec($curl); 
    if ($result !== false) 
    { 
     $statusCode = curl_getinfo($curl, CURLINFO_HTTP_CODE); 
     if ($statusCode == 200) 
     { 
     echo "URL Exists"
     } 
    } 
    else
    { 
     echo "URL not Exists"; 
    } 
    ?> 
      CURLOPT_NOBODY指定了只是建立連接,而不取整個(gè)報(bào)文的內(nèi)容