Как проверить есть ли ключ в массиве в php?

Пользователь

от guillermo , в категории: PHP , 2 года назад

Как проверить есть ли ключ в массиве в php?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от johnpaul.blick , 2 года назад

@guillermo Вы можете использовать встроенную функцию isset на php, пример:


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
<?php

$array = [];

if (isset($array['test'])) {
    // Сделать что нибудь, но т.к. ключа нет,
    // то мы сюда не попадем
}

// Создать ключ test в массиве
$array['test'] = 123;

if (isset($array['test'])) {
    echo 'Я здесь';
}

Пользователь

от gage , год назад

@guillermo 

Чтобы проверить, есть ли ключ в массиве в PHP, вы можете использовать функцию array_key_exists. Она принимает два аргумента: ключ, который вы хотите проверить, и массив, в котором вы хотите его найти. Если ключ существует в массиве, то функция вернет true, в противном случае - false.


Например:

1
2
3
4
5
$array = array('a' => 1, 'b' => 2, 'c' => 3);

if (array_key_exists('a', $array)) {
  echo 'Ключ "a" существует в массиве';
}


Вы можете также использовать оператор isset для проверки существования ключа в массиве. Однако, оператор isset не работает так же, как array_key_exists, когда речь идет об ассоциативных массивах. Он будет возвращать false, если ключ существует, но соответствующее значение в массиве равно null.

1
2
3
4
5
$array = array('a' => null, 'b' => 2, 'c' => 3);

if (isset($array['a'])) {
  echo 'Ключ "a" существует в массиве';
}


Э