2016-07-28 15 views
0

Hallo Ich erstelle einen dynamischen Akkordeon mit den Werten aus der Datenbank.Erstellen von assoziativen Arrays PHP für dynamische Akkordeon

Ich bin in Schleifen der Array stecken. Bitte helfen Sie.

Ich habe ein Array ähnlich wie diese

Array 
(
[0] => Array 
    (
     [0] => Array 
      (
       [0] => real estate 
      ) 

     [1] => Array 
      (
       [0] => flatvcvjh 
       [1] => villayuiuyidd 
      ) 

    ) 

[1] => Array 
    (
     [0] => Array 
      (
       [0] => real estate 
       [1] => iooi 
      ) 

     [1] => Array 
      (
       [0] => y 
      ) 

    ) 

[2] => Array 
    (
     [0] => Array 
      (
       [0] => real estate 
       [1] => iooi 
       [2] => painting 
      ) 

     [1] => Array 
      (
       [0] => interior 
       [1] => exterior 
      ) 

    ) 

[3] => Array 
    (
     [0] => Array 
      (
       [0] => real estate 
       [1] => iooi 
       [2] => painting 
       [3] => contruction 
      ) 

     [1] => Array 
      (
       [0] => house 
       [1] => compound 
      ) 

    ) 

) 

Following is the loop m using to get the above array 
foreach($parent_categories as $parent_category) { 

     $sub_categories=//array of sub cat; 
     $arr[]=$parent_category->name; 

     $scat_name=""; 
     foreach($sub_categories as $sub_category) { 
      //get sub categories 
      $scat_name[]=$sub_category->name; 
     } 
     $subcat_name[]=$arr; 
     $subcat_name[]=$scat_name; 
     $project_categories[] = $subcat_name; 
     $subcat_name=""; 

    } 
echo "<pre>"; 
    print_r($project_categories);exit; 

Die obige Schleife i für 2 Stufen versucht.

Ich brauche ein 3-dimensionales Array mit 3 Ebenen der Kategorien wie

category1 
    subcat1 
    subcat2 
    subsubcat1 
    subsubcat2 
    subcat3 

welche Änderungen werde ich in der obigen Schleife machen muss ich verschiedene Weise versucht, die oben ist, was ich bekommen. Bitte helfen

+0

Was ist das erwartete Ergebnis? – axiac

Antwort

2

Verwenden Sie die rekursive Funktion

$menusList = array(); 
function dynamic_menus($menus) { 
    foreach($menus as $index => $subMenu) { 
    menusList[$index] = is_array($subMenu) ? dynamic_menus($subMenu) : $subMenu; 
    } 
return menusList; 
} 
Verwandte Themen