Проверить, существует ли ключ и получить соответствующее значение из массива в PHP

Любая идея, как проверить, существует ли ключ и если да, затем получить значение этого ключа из массива в php.

например.

У меня есть этот массив:

$things = array(
  'AA' => 'American history',
  'AB' => 'American cooking'
);

$key_to_check = 'AB';

Теперь мне нужно проверить, существует ли $key_to_check, и если да, получите соответствующее значение, которое в этом случае будет Американская кулинария

Ответы

Ответ 1

if(isset($things[$key_to_check])){
    echo $things[$key_to_check];
}

Ответ 2

if (array_key_exists($key_to_check, $things)) {
    return $things[$key_to_check];
}

Ответ 3

Я знаю, что этот вопрос очень старый, но для тех, кто придет сюда. Может быть полезно знать, что в php7 вы можете использовать Null Coalesce Operator

if ($value = $things[ $key_to_check ] ?? null) {
      //Your code here
}

Ответ 4

Самый простой способ - сделать это:

if( isset( $things[ $key_to_check ]) ) {
   $value = $things[ $key_to_check ];
   echo "key exists. Value: ${value}";
} else {
   echo "no such key in array";
}

И вы получите обычное значение:

$value = $things[ $key_to_check ];

Ответ 5

Просто используйте isset(), вы можете использовать его следующим образом, если хотите использовать его как функцию:

function get_val($key_to_check, $array){
    if(isset($array[$key_to_check])) {
        return $array[$key_to_check]);
    }
}