解決方法:
使用PHP解決
使用file_get_contents函數,不過優缺點如果url無法訪問,會出現終止程序問題
使用curl返回,然後判斷是否正確執行
使用get_headers函數,根據HTTP返回值查看是否有200
使用js解決:
使用原生的js函數ActiveXObject,僅支援ie內核的瀏覽器
使用jq擴充
本文主要介紹PHP解法中的第三種,這個方法很少用到,但是感覺又起來還不錯,
get_headers需要支援
php_openssl支援查看phpinfo看看是否開啟
allow_url_fopen=on 修改php.ini,執行使用遠端開啟
函數介紹:
array get_headers ( string $url [, int $format ] )
array get_headers ( string $url [, int $format ] )
get_headers() 返回一個數組,包含一個有伺服器回應一個HTTP 請求所傳送的標頭。如果失敗則傳回 FALSE 並發出一條 E_WARNING 等級的錯誤訊息。
如果將可選的 format 參數設為 1,則 get_headers() 會解析對應的資訊並設定陣列的鍵名。 例如:
複製程式碼
程式碼如下:
$url = "/upload/20110/$url ers($url ,1);
if(preg_match('/200/',$array[0])){
echo "
可以看到正確返回---- -------------------測試ok
優點缺點:
需要allow_url_fopen=on 開啟,有點和file_get_contents函數使用條件類似,但是回傳值比少,可以使用
以上就介紹了universalthemepatcher PHP判斷遠端url是否有效的幾種方法小結,包括了universalthemepatcher方面的內容,希望對PHP教程有興趣的朋友有所幫助。
🎜