Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在PHP中遍历特定关键字的3级数组_Php - Fatal编程技术网

如何在PHP中遍历特定关键字的3级数组

如何在PHP中遍历特定关键字的3级数组,php,Php,我有一个3级阵列。我想显示特定关键字的值。此关键字同时出现在第2级和第3级中。但我只想展示第二层 你知道怎么做吗?我尝试了以下方法,但它显示了键“name”的所有值 $jsonIterator=新的递归迭代器( 新的递归ArrayIterator(json_decode($call_result,TRUE)), 递归迭代器::SELF_优先); foreach($jsonIterator作为$key=>$val){ 如果(strcmp($key,“name”)==0) { //回声“”; 如果(

我有一个3级阵列。我想显示特定关键字的值。此关键字同时出现在第2级和第3级中。但我只想展示第二层

你知道怎么做吗?我尝试了以下方法,但它显示了键“name”的所有值

$jsonIterator=新的递归迭代器(
新的递归ArrayIterator(json_decode($call_result,TRUE)),
递归迭代器::SELF_优先);
foreach($jsonIterator作为$key=>$val){
如果(strcmp($key,“name”)==0)
{
//回声“
”; 如果(strcmp($val,“”)==1) { 回显“$key=>$val\n”; } } }
你知道,怎么只打印第二级的值吗

提前谢谢。

试试这个

foreach ($jsonIterator as $key => $val) 
    {
        foreach($value as $key => $value)

          {
                  if(strcmp( $key , "name") == 1)
                      {

                         if(strcmp($val , "name") == 1)
                         {
                            echo "$key\n";
                         }

                     }
          }
    }

他设法解决了这个问题。代码如下:

foreach($va as $k => $v){

    foreach($v as $k1 => $v1){

            if(strcmp($k1 , "name") == 0)
            {
              echo "$k1 => $v1\n";
            }

    }

}

上面的代码对我很有用。

您想显示什么内容??三级数组中元素的键?给我看看你的阵列。。
foreach($va as $k => $v){

    foreach($v as $k1 => $v1){

            if(strcmp($k1 , "name") == 0)
            {
              echo "$k1 => $v1\n";
            }

    }

}