J'ai une clé stockée dans une variable comme ceci:
$key = 4;
J'ai essayé d'obtenir la valeur pertinente comme suit:
$value = $array[$key];
mais ça a échoué. Aidez-moi.
Votre code semble aller, assurez-vous que la clé spécifiée existe vraiment dans le tableau ou qu'une clé a une valeur dans votre tableau
$array = array(4 => 'Hello There');
print_r(array_keys($array));
// or better
print_r($array);
Sortie:
Array
(
[0] => 4
)
À présent:
$key = 4;
$value = $array[$key];
print $value;
Sortie:
Hello There
$value = ( array_key_exists($key, $array) && !empty($array[$key]) )
? $array[$key]
: 'non-existant or empty value key';
Comme d'autres l'ont dit, cela échouera probablement car la clé demandée n'existe pas dans le tableau. J'ai une fonction d'assistance ici qui prend le tableau, la clé suspectée, ainsi qu'un retour par défaut dans le cas où la clé n'existe pas.
protected function _getArrayValue($array, $key, $default = null)
{
if (isset($array[$key])) return $array[$key];
return $default;
}
j'espère que ça aide.
Cela devrait fonctionner comme prévu.
$array = array('value-0', 'value-1', 'value-2', 'value-3', 'value-4', 'value-5' /* … */);
$key = 4;
$value = $array[$key];
echo $value; // value-4
Mais peut-être n'y a-t-il aucun élément avec la clé 4
. Si vous voulez obtenir le cinquième élément, peu importe la clé, vous pouvez utiliser array_slice
:
$value = array_slice($array, 4, 1);