要根據與指定模式匹配的使用者輸入過濾數組中的值,您可以利用PHP 強大的preg_grep 函數與正規表示式結合使用。
考慮以下範例,其中$data 是一個數組,其中包含顏色:
<code class="php"><?php $data = array('orange', 'blue', 'green', 'red', 'pink', 'brown', 'black');</code>
要根據使用者的輸入(我們將其表示為$input)查找匹配項,您可以執行以下操作:
<code class="php"><?php $input = 'bl'; $input = preg_quote($input, '~'); // Escape special characters in input $result = preg_grep('~' . $input . '~', $data);</code>
在此範例中,我們引用使用preg_quote 輸入以確保正確處理特殊字元。然後,我們使用 preg_grep 和正規表示式來尋找數組元素任何部分中 $input 的匹配。
結果是一個僅包含以下內容的陣列:
<code class="php"><?php array( 'blue', 'black', );</code>
透過使用這種技術,您可以根據使用者輸入有效地過濾數組,提供類似於SQL 的LIKE '%search %' 的方法。 PHP 陣列的運算子。
以上是如何使用類似 SQL 的 LIKE 運算子的模式在 PHP 中過濾陣列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!