Current Location: Home> Latest Articles> How to check if an array key exists using array_key_exists?

How to check if an array key exists using array_key_exists?

gitbox 2025-05-28

In PHP programming, it is a very common operation to determine whether a specified key exists in an array. PHP provides a variety of ways to implement this function, the most classic and widely used is the array_key_exists function. This article will introduce in detail how to use array_key_exists to determine whether there is a specified key in the array, and explain it in combination with examples.

What is array_key_exists ?

array_key_exists is a built-in function in PHP to detect whether the specified key exists in an array. Its syntax is as follows:

 array_key_exists(string|int $key, array $array): bool
  • $key : The key name to be detected, which can be a string or an integer.

  • $array : The detected array.

  • Return value: Return true if the specified key exists in the array, otherwise false .

Example of usage

Suppose we have an array representing the basic information of someone:

 <?php
$userInfo = [
    "name" => "Xiao Ming",
    "age" => 25,
    "email" => "[email protected]"
];

// Determine the key name "age" Does it exist
if (array_key_exists("age", $userInfo)) {
    echo "key 'age' exist,The value is:" . $userInfo["age"];
} else {
    echo "key 'age' 不exist";
}

In the above code, array_key_exists("age", $userInfo) returns true , so the output is:

 key 'age' exist,The value is:25

The difference from isset

Many developers also use isset to determine whether the key exists, but there are some nuances between these two functions:

  • isset($array[$key]) returns true only if the key exists and the value is not null .

  • array_key_exists($key, $array) returns true as long as the key exists (regardless of whether the value is null or not).

For example:

 <?php
$data = [
    "foo" => null
];

var_dump(isset($data["foo"]));           // Output: bool(false)
var_dump(array_key_exists("foo", $data)); // Output: bool(true)

This shows that array_key_exists is more suitable for judging the existence of a key, while isset is more suitable for judging whether the key exists and its value is valid.

Summarize

  • array_key_exists is the preferred function to determine whether a specified key exists in a PHP array.

  • It works for situations where the key exists but the value may be null .

  • Simple syntax, easy to use, and good compatibility.

  • Be careful not to confuse isset and array_key_exists , and choose the appropriate function according to actual needs.


If you want to gain insight into PHP array operations, you can visit the official documentation: https://gitbox.net/manual/en/function.array-key-exists.php