array_key_exists

Checks if the given key or index exists in the array

Description

bool array_key_exists(stringintfloatboolresourcenull $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.

Parameters

key

Value to check.

array

An array with keys to check.

Return Values

Returns true on success or false on failure.

Note:

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

Changelog

Version Description
8.0.0 The key parameter now accepts bool, float, int, null, resource, and string as arguments.
8.0.0 Passing an object to the array parameter is no longer supported.
7.4.0 Passing an object to the array parameter has been deprecated. Use property_exists instead.

Examples

Example #1 array_key_exists example

<?php
$searchArray = ['first' => 1, 'second' => 4];
var_dump(array_key_exists('first', $searchArray));
?>

The above example will output:

bool(true)

Example #2 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
$searchArray = ['first' => null, 'second' => 4];

var_dump(isset($searchArray['first']));
var_dump(array_key_exists('first', $searchArray));
?>

The above example will output:

bool(false)
bool(true)

See Also

  • isset
  • array_keys
  • in_array
  • property_exists