使用php判斷url是否可以打開的解決辦法:
1、使用file_get_contents函數,不過缺點是,如果url無法訪問,會出現終止程序問題
2、使用curl返回,然後判斷是否正確執行
3、使用get_headers函數,根據HTTP返回值查看是否有200
#get_headers需要支援
1、php_openssl支援 查看phpinfo看看是否開啟
2、allow_url_fopen=on 修改php.ini,執行使用遠端開啟
#函數介紹:
array get_headers ( string $url [, int $format ] )
get_headers()傳回一個數組,包含一個有伺服器回應一個HTTP 請求所傳送的標頭。如果失敗則回傳 FALSE 並發出一條 E_WARNING 等級的錯誤訊息。如果將可選的 format 參數設為 1,則 get_headers() 會解析對應的資訊並設定陣列的鍵名。例如:
實例:
<?php $url = "http://cn.php.net/images/php.gif"; $array = get_headers($url,1); if(preg_match('/200/',$array[0])){ echo "<pre/>"; print_r($array); }else{ echo "无效url资源!"; }
#結果:
優缺點:
需要allow_url_fopen=on 開啟,有點和file_get_contents函數使用條件類似,但是回傳值比少,可以使用function_exists判斷該方法是否可以使用。
推薦教學:PHP影片教學
#以上是php判斷url是否可以打開的詳細內容。更多資訊請關注PHP中文網其他相關文章!