iPhone4s 発信者番号通知ソフトウェア PHP で IP アドレスをチェックまたはフィルタリングするための実装コード

WBOY
リリース: 2016-07-29 08:47:23
オリジナル
1770 人が閲覧しました

構成ファイルを追加し、プログラムの初期化時に、特定のルールに従って禁止する必要がある IP アドレスを構成ファイルに追加し、構成ファイル内の各ルールを読み取り、この記事で説明する方法を使用します。現在のアクセスされたクライアント IP アドレスがこれらのルールに存在するかどうかを確認し、存在する場合、サービスは拒否されます。

コードをコピー コードは次のとおりです:


/**
* PHP で IP アドレスを確認またはフィルターします
*
* IP 範囲、CIDR (クラスレスドメイン間ルーティング)、単一 IP 形式をサポートします
* 構成: http://www.CodeBit.cn
* 参照:
* - { @link http://us2.php.net/manual/zh/function.ip2long.php#70055}
* - {@link http://us2.php.net/manual/zh/function.ip2long.php# 82397}
*
* @param string $network ネットワーク セグメント、IP 範囲、CIDR、単一 IP 形式をサポート
* @param string $ip チェックする IP アドレス
* @return boolean
*/
function netMatch($network, $ip) {
$network = trim($network) ;
$ ip = トリム($ip);
$result = false;
// IP 範囲 : 174.129.0.0 - 174.129.255.255
if (false !== ($pos = strpos($network, "-") )) {
$from = ip2long(trim(substr($network, 0, $pos)))
$to = ip2long(trim(substr($network, $pos+1))); ($ip );
$result = ($ip >= $from および $ip // CIDR : 174.129.0.0/16
} else if (false !== strpos($network) ,"/ ")) {
list ($net, $mask) = 爆発 ('/', $network)
$result = (ip2long($ip) & ~((1 << (32 - $)マスク)) - 1)) == ip2long($net);
// 単一 IP
} else {
$result = $network === $ip;
return $result;
// 174.129. 0.0 - 174.129 .255.255
var_dump(netMatch(' 174.129.0.0 - 174.129.255.255 ', '174.129.1.31')); // True
var_dump(netMatch(' 174.129.0.0/16 ', 「174.139.1.31」) ); // False
var_dump(netMatch(' 174.129.1.32 ', '174.129.1.31')); // False
?> IP アドレスには一定の制限があり、使用には注意が必要ですが、緊急の制限されたアクセスには依然として非常に役立ちます。
上記は、iPhone4s Caller ID Home ソフトウェアの内容を含む、iPhone4s Caller ID Home ソフトウェア PHP で IP アドレスをチェックまたはフィルタリングするための実装コードを紹介しています。PHP チュートリアルに興味のある友人に役立つことを願っています。


ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート