Possible en double:
Check if a “run-time” multidimensional array key existsVérifiez si une clé de tableau multidimensionnel « run-time » existe
Salut,
J'ai un tableau multidimensionnel. J'ai besoin d'une fonction qui vérifie si une clé spécifiée existe et si elle n'est pas définie.
Prenons ce tableau
$config['lib']['template']['engine'] = false;
Une fonction ne doit pas mettre à jour la valeur true quand je l'appelle avec:
checkAndSetKey('lib template engine',true);
//> Checks if isset $config['lib']['template']['engine'] and if not isset $config['lib']['template']['engine'] = true;
Notez que mon tableau est non seulement 3 dimensions. Il devrait être en mesure de vérifier et régler même avec seulement 1 dimension:
checkAndSetKey('genericSetting',true);
//> In this considering there isn't any $c['genericSetting'] the function set the key to true;
En ce moment je suis en utilisant un code d'eval terrible, je voudrais entendre suggérer :)
Pour vérifier dynamiquement si la clé existe il pourrait être utilisé ce code:
$array = $config;
$keys=explode(' ',$argument1);
foreach($keys as $v) {
if (!array_key_exists($v,$array)) {
//> [todo!] the current key doens't exist now we should set the value
}
$array = &$array[$v];
}
peut être utile: http://stackoverflow.com/questions/6088115/transform-flat-array-into-a-hierarchical-multi-dimensional-array Il n » Cela ressemble à un bon moyen de changer les paramètres. –
C'était ma propre question. Et ils ne sont pas DUP parce que cette question était seulement pour voir si c'était à ne pas mettre. Lire mieux la prochaine fois –
je suppose que si jeff le ferme je dirai n'importe quoi xD –