URLが正当かどうかを検証するphp関数
URL検証には2種類あり、1つは正規表現を使用してURLがURLルールに準拠しているかどうかを検証するもので、もう1つは関数を使用して指定されたURLにアクセスするものです。正常にアクセスできるかどうかを確認するための URL です。正常にアクセスできれば、それは当然正規の URL アドレスです。
例1
コードは次のとおりです |
|
関数 isValidUrl($url) {
$patern = '/^http[s]?:\/\/'.
'(([0-9]{1,3}\.){3}[0-9]{1,3}'. // IP 形式の URL- 199.194.52.184
'|'. // IP と DOMAIN (ドメイン名) を許可します
'([0-9a-z_!~*\'()-]+\.)*'. // 3 レベルのドメイン検証 - www.
'([0-9a-z][0-9a-z-]{0,61})?[0-9a-z]\.' // セカンダリ ドメインの検証
'[a-z]{2,6})' // トップレベル ドメインの検証 .com または .museum
'(:[0-9]{1,4})?' // ポート - :80
'((\/\?)|'. // ファイルが含まれている場合はファイル部分を確認
'(\/[0-9a-zA-Z_!~\*\'\(\)\.;\?:@&=\+\$,%#-\/]*)?)$/';
if(!preg_match($patern, $url)) {
die( '入力した URL 形式に問題があります。確認してください!');
}
}
|
例2
上記の例は、URLが正常かどうかを検証するだけであり、curl関数を使用してメソッドを実行できるかどうかを意味するものではありません
。
コードは次のとおりです |
|
$url = "http://www.45it.net";
$curl =curl_init($url);
curl_setopt($curl, CURLOPT_NOBODY, true);
$result =curl_exec($curl);
if ($result !== false)
{
$statusCode =curl_getinfo($curl, CURLINFO_HTTP_CODE);
if ($statusCode == 404)
{
「URL が存在しません」をエコーします
}
それ以外
{
echo "URL が存在します";
}
}
それ以外
{
echo "URL が存在しません";
}
|
この関数に加えて、file、file_get_contents()、fopen 関数などの PHP の多くの関数を検出に使用することもできます。
http://www.bkjia.com/PHPjc/918725.htmlwww.bkjia.com本当http://www.bkjia.com/PHPjc/918725.html技術記事 PHP には、URL が正当であるかどうかを検証する関数が 2 つあります。1 つは、正規表現を使用して、URL が URL ルールに準拠しているかどうかを検証する関数です。もう 1 つは、関数を使用して指定された URL にアクセスし、それが有効かどうかを確認する関数です。 ..