php – 如何检查是否存在深数组值

前端之家收集整理的这篇文章主要介绍了php – 如何检查是否存在深数组值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想快速识别一个数组中是否存在一个键,以避免发生错误.

例如,我可能会有这样的数组

$arr['f']['b']['g'] = array( 'a','b','c',) ;

或者数组在$arr [‘f’] [‘b’]中可能没有任何变量:

$arr['f']['x'] = array() ;

在引用$arr [‘f’] [‘b’] [‘g’]的(可能)内容时,如何避免重复测试?

if ( isset( $arr['f'] ) &&
     isset( $arr['f']['b'] ) &&
     isset( $arr['f']['b']['g'] ) /* ... yawn */ ) {
  /* blah */
}

必须有一种更简单的方法来确定我引用的给定数组值是否存在?必须测试我寻求的价值以及其所有祖先的存在,似乎太冗长了.在某些情况下,这是有道理的,是的,但不是全部.

例如:它可以表示,例如user-> session-> cart,其中我想要一种快速检查购物车是否具有条目的方式,而不必包括用户是否存在的检查,然后是否会话存在,则是否存在购物车,则…

编辑:我不在寻找“做一个名称为”g“的数组值存在”,因为“具有祖先f => b => g存在的数组值”.

以下将按照您的期望工作:
if(isset($a['a']['b']['c']))

如果这些元素中的任何元素未定义,则isset()将返回false.

猜你在找的PHP相关文章