php5.2 より前では、IP アドレスが有効かどうかを確認する場合、正規表現を使用して IP アドレスが有効であるかどうかを確認する必要がありましたが、php5.2 以降は ping を呼び出す必要がありました。 2.0には、特別な機能があります。 この判断を行った後、合法的なIPであるかどうかを判断するためのこれらの機能をまとめてみましょう
コードは次のとおりです
| コードをコピー
|
if(filter_var($ip, FILTER_VALIDATE_IP)) {// 有効です
}else {// それは無効です
}
|
それが合法的な IPv4 IP アドレスであるかどうかを判断する
コードは次のとおりです
| コードをコピー
|
if(filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4)) {// 有効です
}else {// それは無効です
}
|
192.168.1.1 などのプライベート IP アドレスが除外される、合法的なパブリック IPv4 アドレスであるかどうかを判断します。
コードは次のとおりです
コードをコピー |
|
if(filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4 | FILTER_FLAG_NO_PRIV_RANGE)) {// 有効です
}else {// それは無効です
}
|
それが正当な IPv6 アドレスであるかどうかを判断する
コードは次のとおりです
コードをコピー |
|
if(filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_NO_RES_RANGE)) {// 有効です
}else {// それは無効です
}
|
パブリック IPv4 IP アドレスであるか、合法的なパブリック IPv6 IP アドレスであるかを判断します
コードは次のとおりです
コードをコピー |
|
if(filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_NO_PRIV_RANGE | FILTER_FLAG_NO_RES_RANGE)) {// 有効です
}else {// それは無効です
}
|
PHPのバージョンが低すぎる場合、上記の機能はいずれも使用できませんが、正規表現を使用して検証することができます
コードは次のとおりです
コードをコピー |
|
//IP形式を決定する
関数 is_ip($gonten){
$ip =explode(".",$gonten);
for($i=0;$i
{
If($ip[$i]>255){
return (0);
}
}
return ereg("^[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}$" 、$ゴンテン);
}
|
http://www.bkjia.com/PHPjc/631494.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/631494.html技術記事 php5.2以前では、IPアドレスが有効かどうかを確認したい場合は、正規表現を使ってIPアドレスが有効かどうかを確認する必要がありましたが、...
。