![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
こんにちは。現在、掲示板などに使うアクセス制限ライブラリを作っています。
やりたいことは、制限したいIPアドレスのリストを作り、そのリストの中に接続元のIPが含まれているかどうかを調べたいのです。
制限したいIPアドレスのリストには、IPアドレスの範囲表現(?)を使うことができるようにしたいと考えています。
例:
$deny[0] = 'xxx.11.11.11';
$deny[1] = 'xxx.11.22.33';
$deny[2] = 'xxx.11.33.*';
上記の「*」のようにです。
ここで、
$ip = 'xxx.11.33.12';
が、$denyに含まれているかどうかを調べたいのです。
正規表現を使うのかとも考えましたが、なかなか理解できません。
もし、お分かりになりましたら回答よろしくお願いいたします。
No.1ベストアンサー
- 回答日時:
多分こんな感じではないかと。
。。if(preg_match ("/xxx\.11\.33\.\d*/i", $ip)) {
#ふくまれてる
} else {
#ふくまれてない
}
参考URL:http://www2.famille.ne.jp/~akio1998/l_grep.html
ありがとうございます。参考になりました。
=============================================
$deny[0] = '11.11.11.11';
$deny[1] = '11.11.22.33';
$deny[2] = '11.11.33.*';
$ip = '11.11.33.4';
foreach ($deny as $value)
{
$str = str_replace('*', '\d*', $value);
if(preg_match ('/'.$str.'/i', $ip))
{
#ふくまれている
}
else
{
#ふくまれてない
}
}
=============================================
としたところ、「11.11.33.*」のみがマッチすることを確認しました。自分は正規表現の基礎から勉強する必要がありますね^_^;
URLも参考になります。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- ネットワーク コマンドプロンプトで、コマンドの飛ばし方を教えてください。 ネットワークにデータを飛ばす(copy) 4 2022/10/19 11:21
- Firefox(ファイヤーフォックス) Firefoxのグーグル検索で表示される現在地を修正したい!!! 1 2022/05/17 10:42
- 固定IP Firefoxので表示される現在地を修正するには? 2 2022/05/17 21:16
- Oracle ビットで表せる数値について 3 2022/09/12 16:37
- その他(プログラミング・Web制作) このプログラミング誰か教えてくれませんか 4 2022/04/29 15:56
- 固定IP パソコン(無線ルーター)のIPアドレスは、iPhoneのIPアドレスのように簡単に変更可能? 4 2022/04/02 13:00
- サーバー Googleドライブなどを使わずにテザリングAndroidでWindowsとファイル共有 1 2023/02/19 13:14
- ネットワーク 外部からローカルIPアドレスはわかる? 3 2022/07/05 00:53
- UNIX・Linux raspberry piを使ったWebサーバー制作をしています、接続するネットワークを変更したときに 1 2023/01/09 15:57
- ネットワーク 自作のサーバーPCが自宅内のネットワークに接続できない 3 2023/01/24 16:58
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PHPで変数から1行目だけを取得...
-
、"(ダブルクォーテーション)...
-
preg_match()の使い方
-
switchの大量分岐の高速化
-
PHPで<a>タグ内からURLと文字を...
-
入力フォームの文字規制
-
PHPメールフォーム URLと半角...
-
Excelで数字のみを2倍3倍にする...
-
preg_matchで Warning: Undefin...
-
preg_match : マッチした位置の...
-
preg_matchと定数について
-
mb_eregのブレースについて(住...
-
正規表現パターンの記入方法に...
-
htmlソースからタグ内のテキス...
-
マルチバイトの文字列の検索方法
-
VBAのコマンドボタンの文字列の...
-
エスケープ文字の復帰(¥r)と...
-
メッセージボックスで1025文字...
-
ソースコードの1行が長いとき...
-
文字の入力で横バー上段、中断...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
preg_matchでエラーが出ます。
-
VBAを使ってHTMLソースから特定...
-
Excelで数字のみを2倍3倍にする...
-
PHPで変数から1行目だけを取得...
-
正規表現でシングルクォーテー...
-
、"(ダブルクォーテーション)...
-
正規表現で「0」のみ抽出
-
住所から特定の文字列、数値を...
-
PHPで あるフォルダ内の、特定...
-
phpでhtmlソースを解析し、文字...
-
PHPで<a>タグ内からURLと文字を...
-
正規表現で特定のHTMLタグのク...
-
PHPの正規表現で住所を分けるに...
-
Smartyを使用した、テンプレー...
-
PHPによるIPアドレスマッチ
-
正規表現で、半角大文字と半角...
-
php 正規表現で(ただし○○は除...
-
PHPメールフォーム URLと半角...
-
「半角数字」と「+」を許可する...
-
preg_matchでのマッチが正しく...
おすすめ情報