array_search

Searches the array for a given value and returns the corresponding key if successful

&reftitle.description; `mixed` `array_search` `mixed` `needle` `array` `haystack` `bool` `strict` false

Searches `haystack` for `needle`.

&reftitle.parameters;

`needle`

- The searched value.

  If `needle` is a string, the comparison is done in a case-sensitive manner.

`haystack`

- The array.

`strict`

- 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 check the types of the `needle` in the `haystack`, and objects must be the same instance.

&reftitle.returnvalues;

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 `search_value` parameter instead.

&return.falseproblem;
&reftitle.changelog;

&Version; | &Description;
5.3.0 | As with all internal PHP functions as of 5.3.0, `array_search` returns &null; if invalid parameters are passed to it.
4.2.0 | Prior to PHP 4.2.0, `array_search` returns &null; on failure instead of &false;.

&reftitle.examples;

### `array_search` example

    <?php
    $array = array(0 => 'blue', 1 => 'red', 2 => 'green', 3 => 'red');

    $key = array_search('green', $array); // $key = 2;
    $key = array_search('red', $array);   // $key = 1;
    ?>

&reftitle.seealso;

- `array_keys`
- `array_values`
- `array_key_exists`
- `in_array`