array_search()
array_search() — Searches the array for a given value and returns the first corresponding key if successful.
Built-in function of PHP 8.5. The manual lists it as available in PHP 4 >= 4.0.5, PHP 5, PHP 7, PHP 8. This page is the reference card: signature, parameters and return value, plus the changelog and the example the manual provides.
Signature
array_search(mixed $needle, array $haystack, bool $strict = false): int|string|false
Parameters
| Parameter | Type | What it takes |
|---|---|---|
| $needle | mixed | The searched value. |
| $haystack | array | The array. |
| $strict | bool | If the third parameter strict is set to true then the array_search() function will search for identical elements in the haystack. This means it will also perform a strict type comparison of the needle in the haystack, and objects must be the same instance. |
Return value
Returns the key for needle if it is found in the array, false otherwise. If needle is found in haystack more than once, the first matching key is returned. To return the keys for all matching values, use array_keys() with the optional filter_value parameter instead. This function may return Boolean false, but may also return a non-Boolean value which evaluates to false. Please read the section on Booleans for more information. Use the === operator for testing the return value of this function.
Example
A runnable snippet:
$array = array(0 => 'blue', 1 => 'red', 2 => 'green', 3 => 'red'); $key = array_search('green', $array); // $key = 2; print_r($key); $key = array_search('red', $array); // $key = 1; print_r($key);
See also
array_keys(), array_values(), array_key_exists(), in_array()
All PHP 8.5 built-in functions
Reference card built from the PHP manual page array_search() (PHP documentation, CC BY 3.0). The page is generated from the manual, so the wording of the parameter and return value text follows php.net.