PHP, как получить значение от массива, если ключ находится в переменной

Мне сохранили ключ в переменной как так:

$key = 4;

Я пытался получить соответствующее значение как так:

$value = $array[$key];

но это перестало работать.Помощь.

14
задан Ash 15 June 2011 в 07:43
поделиться

3 ответа

Ваш код в порядке, убедитесь, что указанный вами ключ действительно существует в массиве или такой ключ имеет значение в вашем массиве например:

$array = array(4 => 'Hello There');
print_r(array_keys($array));
// or better
print_r($array);

Вывод:

Array
(
    [0] => 4
)

Теперь :

$key = 4;
$value = $array[$key];
print $value;

Вывод:

Hello There
24
ответ дан 1 December 2019 в 08:52
поделиться
$value = ( array_key_exists($key, $array) && !empty($array[$key]) ) 
         ? $array[$key] 
         : 'non-existant or empty value key';
5
ответ дан 1 December 2019 в 08:52
поделиться

Он должен работать так, как вы планировали.

$array = array('value-0', 'value-1', 'value-2', 'value-3', 'value-4', 'value-5' /* … */);
$key = 4;
$value = $array[$key];
echo $value; // value-4

Но может и нет элемента с ключом 4 . Если вы хотите получить пятый элемент независимо от того, какой у него ключ, вы можете использовать array_slice :

$value = array_slice($array, 4, 1);
0
ответ дан 1 December 2019 в 08:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: