array_key_exists

(PHP 4 >= 4.0.7, PHP 5, PHP 7, PHP 8)

array_key_existsПроверяет, существует ли в массиве заданный ключ или индекс

Описание

array_key_exists(string|int|float|bool|resource|null $key, array $array): bool

Функция array_key_exists() возвращает true, если заданный ключ (key) содержится в массиве. В параметр key разрешено передавать значение, которое допустимо в качестве индекса массива.

Список параметров

key

Проверяемое значение.

array

Массив с проверяемыми ключами.

Возвращаемые значения

Возвращает true в случае успешного выполнения или false, если возникла ошибка.

Замечание:

Функция array_key_exists() ищет ключи только на первом уровне массива. Внутренние ключи в многомерных массивах найдены не будут.

Список изменений

Версия Описание
8.0.0 Параметр key теперь принимает в качестве аргументов значения bool, float, int, null, resource и string.

Примеры

Пример #1 Пример использования функции array_key_exists()

<?php

$search_array
= array('first' => 1, 'second' => 4);
if (
array_key_exists('first', $search_array)) {
echo
"Массив содержит элемент «first».";
}

?>

Пример #2 Пример использования функции array_key_exists() с языковой конструкцией isset()

Конструкция языка isset() не возвращает true для ключей массива, которые ассоциированы со значением null, а функция array_key_exists() — возвращает.

<?php

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

// Возвращает false
isset($search_array['first']);

// Возвращает true
array_key_exists('first', $search_array);

?>

Примечания

Замечание:

По причинам обратной совместимости функция array_key_exists() возвращает true, если ключ (key) — это свойство объекта (object), переданного в качестве параметра array. Поведение устарело в PHP 7.4.0 и удалено в PHP 8.0.0.

Проверить, содержит ли объект заданное свойство, можно функцией property_exists().

Смотрите также

  • isset() - Определяет, была ли установлена переменная значением, отличным от null
  • array_keys() - Возвращает все или некоторое подмножество ключей массива
  • in_array() - Проверяет, присутствует ли в массиве значение
  • property_exists() - Проверяет, есть ли у объекта или класса свойство