ホームページ >バックエンド開発 >PHPチュートリアル >PHP で SQL のような「%search%」クエリを使用して配列値をフィルタリングする方法

PHP で SQL のような「%search%」クエリを使用して配列値をフィルタリングする方法

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-04 02:07:011084ブラウズ

How to Filter Array Values with a SQL-Like

PHP で SQL のような "%search%" クエリを使用して配列値をフィルタリングする

JQueryUI でオートコンプリート フィールドを構築する場合、特定のフィールドを取得するユーザー入力に基づいて配列から結果を得るのは難しい場合があります。 SQL LIKE '%search%' クエリと同様に、部分的な検索文字列に基づいて配列値を効果的にフィルター処理するには、配列操作と正規表現の微妙な違いを理解することが重要です。完全一致を使用しない場合、タスクにはカスタマイズされたアプローチが必要です。

解決策の 1 つは、preg_grep 関数を使用することです。これにより、正規表現を使用して配列をフィルタリングできるようになります。ユーザー入力を適切にエスケープし、~ 区切り文字を使用することで、検索文字列を含む任意の文字列と一致する正規表現を作成できます。例:

<code class="php">$input = preg_quote('bl', '~'); // escape the input string
$data = array('orange', 'blue', 'green', 'red', 'pink', 'brown', 'black');

$result = preg_grep('~' . $input . '~', $data);</code>

結果の $result 配列には、値のどこかにシーケンス 'bl' を含む $data のすべての要素が含まれ、SQL LIKE '%search%' クエリの動作を効果的に複製します。 。配列操作技術と正規表現を注意深く組み合わせることで、柔軟かつ効率的な方法で配列値をフィルタリングし、オートコンプリート機能のユーザー エクスペリエンスと精度を向上させることができます。

以上がPHP で SQL のような「%search%」クエリを使用して配列値をフィルタリングする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。