Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.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显示三维数组的正确方法_Php_Arrays - Fatal编程技术网

使用键和值php显示三维数组的正确方法

使用键和值php显示三维数组的正确方法,php,arrays,Php,Arrays,我有一个三维数组,定义如下: $seccc = array( array( "Href" => base_url().'capture/', "Icono" => base_url().'assets/images/icon_h

我有一个三维数组,定义如下:

$seccc  =  array(   
                                array( 
                                        "Href"      => base_url().'capture/',   
                                        "Icono"     => base_url().'assets/images/icon_home.png', 
                                        "Texto"     => 'Captura',
                                        "Submenu"   => array(1,2,3)
                                    ),
                                array( 
                                        "Href"      => base_url().'seg/',   
                                        "Icono"     => base_url().'assets/images/icon_tra.png', 
                                        "Texto"     => 'Seg',
                                        "Submenu"   => array('ALFA','OMEGAL','DELTA')
                                    ),
                                array( 
                                        "Href"      => base_url().'usr/',   
                                        "Icono"     => base_url().'assets/images/icon_users.png', 
                                        "Texto"     => 'Users',
                                        "Submenu"   => ''
                                    ),  
                                array( 
                                        "Href"      => base_url().'clients/',   
                                        "Icono"     => base_url().'assets/images/icono_gro.png', 
                                        "Texto"     => 'Clients',
                                        "Submenu"   => ''
                                    ),
                                array( 
                                        "Href"      => base_url().'suc/',   
                                        "Icono"     => base_url().'assets/images/icupo.png', 
                                        "Texto"     => 'Suc',
                                        "Submenu"   => ''
                                    )
                            );
我在做每一个循环

foreach ($seccc  as $part)
    {
        foreach ($part as $item)
        {
            echo '<li>'.$item["Href"];
            if(is_array($item["Submenu"]))
            {
               foreach($item["Submenu"] as $subkey)
               {
                echo '<ul>';
                echo $subkey;                
                echo '</ul>';
               }                    
            }
        }
        echo '</li>';            
        }
    }
foreach($seccc作为$part)
{
foreach(部分为$item)
{
回显“
  • ”.$item[“Href”]; if(是_数组($item[“子菜单])) { foreach($item[“子菜单”]作为$subkey) { 回声“
      ”; echo$子键; 回声“
    ”; } } } 回音“
  • ”; } }
    但是,我无法访问“Href”、“Icono”、“Texto”或“Submenu”项,如何访问它们的值 似乎
    $item[“Href”]
    不起作用

    foreach($seccc作为$part)
    
    foreach ($seccc as $part)
    {
        // use $part instead of $item, here you can get $part['Icono'], $part['Texto'] etc
        echo '<li>'.$part["Href"]; 
        if(is_array($part["Submenu"])) 
        {
            // loop over $part['Submenu'] if it's an array
            foreach($part["Submenu"] as $key => $subkey)
            {
                echo '<ul>';
                echo $subkey;                
                echo '</ul>';
            }                    
        }
        echo '</li>';            
    }
    
    { //使用$part代替$item,在这里你可以得到$part['Icono'],$part['Texto']等 回显“
  • ”.$part[“Href”]; if(是_数组($part[“子菜单])) { //如果是数组,则循环$part['Submenu'] foreach($part[“Submenu”]作为$key=>$subkey) { 回声“
      ”; echo$子键; 回声“
    ”; } } 回音“
  • ”; }
    您有一个循环到多个循环

    foreach ($seccc as $item)
    {
      echo '<li>'.$item["Href"];
      if(is_array($item["Submenu"]))
      {
         foreach($item["Submenu"] as $subkey)
         {
          echo '<ul>';
          echo $subkey;                
          echo '</ul>';
         }                    
      }    
    }
    
    foreach($seccc作为$item)
    {
    回显“
  • ”.$item[“Href”]; if(是_数组($item[“子菜单])) { foreach($item[“子菜单”]作为$subkey) { 回声“
      ”; echo$子键; 回声“
    ”; } } }
  • 鉴于上述结构,您的做法是正确的。我会在构建阵列后打印它,以确保输出符合预期。请随意发布打印输出,如果需要,有人可以提供帮助。由于某些原因,我得到了重复的正确显示,好像每个部分都重复了4次…@thecodeparadox您使用了一个无用的循环,我很高兴您更新了它。最后一个问题,如果我想循环
    $part[“Submenu”]
    (如果它是一个数组)我该怎么做?@cMinor已经更新了如何循环
    $part['Submene']
    的答案。