2012-03-08 47 views
-2

什麼是最準確和最快速的方式來檢查URL是否存在?例如:Google.com。我一直在閱讀,我可以使用curl,或者我可以使用php file_exists()來查找索引文件。我用這個捲曲功能...什麼是最快和最準確的方式來檢查網站/ URL是否存在..捲曲或PHP?

function url_exists($url) { 
    $ch = @curl_init($url); 
    @curl_setopt($ch, CURLOPT_HEADER, TRUE); 
    @curl_setopt($ch, CURLOPT_NOBODY, TRUE); 
    @curl_setopt($ch, CURLOPT_FOLLOWLOCATION, FALSE); 
    @curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); 
    $status = array(); 
    preg_match('/HTTP\/.* ([0-9]+) .*/', @curl_exec($ch) , $status); 
    return ($status[1] == 200); 
} 

例如google.com但它返回false爲谷歌和真正的其他網站。我想我正在尋找這個問題的最佳解決方案。

回答

0

如果您尋找,而不是狀態代碼只是一個連接,您可以只使用fopen ...

if (!fopen($url, "r")) { 
// cannot connect 
} 

如果要檢查HTTP代碼,然後curl可能是最好的辦法。

+0

返回結果不會變慢嗎? – Joe 2012-03-08 15:33:16

+2

@Joe如果你真的關心速度,自己測試它 – Gordon 2012-03-08 15:35:09

+0

@戈登我沒有意識到我可以做到這一點。謝謝 – Joe 2012-03-08 15:40:43

相關問題