質問
次のようにソートされたIPアドレスを含むファイルにIPアドレスが存在するかどうかを確認する最も速い方法は何ですか。
219.93.88.62 219.94.181.87 219.94.193.96 220.1.72.201 220.110.162.50 220.126.52.187 220.126.52.247
制約
- データベースなし(例:MySQL、PostgreSQL、Oracleなど)
- まれな前処理が許可されます(可能性のセクションを参照)
- クエリごとにファイルをロードする必要がないのはいいことです(131Kb)
- 5メガバイト未満のディスクスペースを使用
- 追加のPHPモジュールはありません
ファイルの詳細
- 1行に1つのIPアドレス
- 9500行以上
可能な解決策
- ディレクトリ階層(基数木?)を作成してから使用します
is_dir()
(残念ながら、これは87メガバイトを使用します)