Tengo una matriz con numerosas dimensiones, y quiero probar la existencia de una celda.PHP: probando la existencia de una celda en una matriz multidimensional
La aproximación por debajo de cascada, será sin duda un modo seguro de hacerlo:
if (array_key_exists($arr, 'dim1Key'))
if (array_key_exists($arr['dim1Key'], 'dim2Key'))
if (array_key_exists($arr['dim1Key']['dim2Key'], 'dim3Key'))
echo "cell exists";
Pero, ¿existe una manera más sencilla?
voy a entrar en más detalles sobre esto:
- ¿Puedo realizar esta comprobación en un solo estado de cuenta?
- ¿Tengo que usar array_key_exist o puedo usar algo como isset? ¿Cuándo uso cada uno y por qué?
Gracias. Si es así, ¿por qué uno debería usar array_key_exists? – shealtiel
@gidireich: exactamente por esa razón. Para poder diferenciar entre una clave existente y tener un valor 'nulo', y una clave que no existe en absoluto. Lo cual es solo una razón si te preocupas por eso. – Jon
con 'isset' su comprobación si la clave y el valor existe o no es nulo, con 'array_key_exists' su comprobación si ** key ** existe independientemente de si los valores son' null' – RobertPitt