前提
リモート URL が有効かどうかを判断する必要があります。リモート URL にはリモートの写真、Web ページ、ビデオなどが含まれます。
解決策:
PHPを使用して解決します
file_get_contents関数を使用しますが、一長一短はURLにアクセスできない場合にプログラムが終了する問題が発生することです-
curlを使用して戻り、正しく実行されたかどうかを判断します -
get_headers関数を使用して、HTTPの戻り値に基づいて200があるかどうかを確認します-
js を使用して解決します:
ネイティブ js 関数 ActiveXObject を使用し、IE カーネルを備えたブラウザのみをサポートします -
jq拡張機能を使用する-
この記事では主に 3 番目の PHP ソリューションを紹介します。この方法はほとんど使用されませんが、かなり良いと思います。
get_headers にはサポートが必要です
php_openssl サポート phpinfo をチェックして、有効になっているかどうかを確認します
- allow_url_fopen=on php.ini を変更し、リモートオープンを使用して実行します
-
機能紹介:
array get_headers ( string $url [, int $format ] )
get_headers() は、HTTP リクエストに応じてサーバーから送信されたヘッダーを含む配列を返します。失敗した場合は FALSE を返し、E_WARNING レベルのエラー メッセージを発行します。
オプションの format パラメーターが 1 に設定されている場合、get_headers() は対応する情報を解析し、配列のキー名を設定します。 例:
簡単な例:
$url = "http://cn.php.net/images/php.gif";
$array = get_headers($url,1);
if(preg_match('/200/', $array[0])){
echo "
";
print_r($array);
echo "無効な URL リソースです!";
説明: リモートイメージurが有効かどうかを判定し、戻り値HTTPに200の情報があるかどうかにより、有効なURLリソースであるかどうかを判定します
テスト結果:
正しい戻り値が表示されます -----------------------テストOK
メリットとデメリット:
allow_url_fopen=on が必要です。これは file_get_contents 関数に似ていますが、戻り値が少ないため、使用できます
function_exists はメソッドが使用できるかどうかを決定します
出典: http://phphuaibei.cnblogs.com/
http://www.bkjia.com/PHPjc/363886.html
www.bkjia.com
truehttp://www.bkjia.com/PHPjc/363886.html技術記事前提条件は、リモート URL が有効かどうかを判断することです。リモート URL には、リモートの写真、Web ページ、ビデオ、その他の要素が含まれています。解決策: PHP を使用して file_get_contents 関数を使用して問題を解決します。ただし、利点と欠点は次のとおりです。 .