2014-06-26 56 views
-1

有沒有辦法找到,如果廣告網址爲有效檢查URL的有效性在PHP

我想這個代碼

if (filter_var($url, FILTER_VALIDATE_URL) === FALSE) { 
    echo 'Not a valid URL'; 
} 
else 
    echo 'Ok'; 

但如果我嘗試用http://www.gsrgrs.grsgsrg,例如,結果是好。

編輯:目標是看看那裏是否有一個活的網站。

+2

這不是一個有效的網址? –

+0

這是因爲是一個有效的網址。 – Sal00m

+2

定義「有效」。有效的格式,還是有效的,因爲那裏有一個活網站,對請求做出迴應? – bcmcfc

回答

2

http://www.gsrgrs.grsgsrg是一個完全有效的URL,因此測試結果是正確的。

如果你的目的是要發現是否一個URL指向一個有效的資源相反,你應該使用curl或類似庫嘗試讀取操作和測試的協議響應代碼,例如有:

$http = curl_init($url); 
$result = curl_exec($http); 
$http_status = curl_getinfo($http, CURLINFO_HTTP_CODE); 
curl_close($http); 
if($http_status == 200) 
    echo 'Ooooh, we got a 200 OK response from the webserver!'; 
else 
    echo 'Meh, failed with '.$http_status.' :('; 
+0

對不起,對於有效的URL,我認爲有效,因爲有一個在那裏的活網站 –

+0

爲什麼要麻煩?無論如何,你可能不得不使用蜘蛛爬網站,看看他們是否有任何打擊。 – Jonast92