Searching Multidimensional Arrays for Partial Value Matches
Given an array of arrays, you may need to find all elements that contain a specific search term. To accomplish this, array_filter can be employed.
Explanation:
The array_filter function takes an array and a callback function as parameters. The callback function determines which elements of the array to retain and which to discard.
In this case, the callback function we need should check if a given element contains the search term. We can use strpos to accomplish this:
$search_text = 'Bread'; $filtered_array = array_filter($array, function($el) use ($search_text) { return (strpos($el['text'], $search_text) !== false); });
By using strpos, we check whether the search term exists anywhere within the 'text' key of each element. If the search term is found, the callback returns true, and the element is retained in the filtered array. Otherwise, the callback returns false, and the element is removed.
Additional Resources:
The above is the detailed content of How Can I Efficiently Search Multidimensional Arrays for Partial Value Matches in PHP?. For more information, please follow other related articles on the PHP Chinese website!