array_key_exists

Checks if the given key or index exists in the array

&reftitle.description; `bool` `array_key_exists` ``string``int```key` `array` `array`

`array_key_exists` returns &true; if the given `key` is set in the array. `key` can be any value possible for an array index.

&reftitle.parameters;

`key`

- Value to check.

`array`

- An array with keys to check.

&reftitle.returnvalues;

&return.success;

`array_key_exists` will search for the keys in the first dimension only. Nested keys in multidimensional arrays will not be found.

&reftitle.examples;

### `array_key_exists` example

    <?php
    $search_array = array('first' => 1, 'second' => 4);
    if (array_key_exists('first', $search_array)) {
        echo "The 'first' element is in the array";
    }
    ?>

### `array_key_exists` vs `isset`

`isset` does not return &true; for array keys that correspond to a &null; value, while `array_key_exists` does.

    <?php
    $search_array = array('first' => null, 'second' => 4);

    // returns false
    isset($search_array['first']);

    // returns true
    array_key_exists('first', $search_array);
    ?>

&reftitle.notes;

For backward compatibility reasons, `array_key_exists` will also return &true; if `key` is a property defined within an `object` given as `array`. This behaviour is deprecated as of PHP 7.4.0, and removed as of PHP 8.0.0.

To check whether a property exists in an object, `property_exists` should be used.

&reftitle.seealso;

- `isset`
- `array_keys`
- `in_array`
- `property_exists`