php - How to render a pyramide with each row by level property? -


array (     array(       ['name'] => 'test1',      ['level'] => 1     },    array(       ['name'] => 'test2',      ['level'] => 2     },     array(       ['name'] => 'test3',      ['level'] => 2     },    array(       ['name'] => 'test4',      ['level'] => 3     },    array(       ['name'] => 'test5',      ['level'] => 3     },    array(       ['name'] => 'test6',      ['level'] => 3     },    array(       ['name'] => 'test7',      ['level'] => 3     },    ) 

i have array of arrays sorted level, want make this:

                  ________                    |        |                   |  test1 |                   |________|         ________              ________       |        |            |        |       |  test2 |            |  test3 |       |________|            |________|  ________   ________   ________   ________ |        | |        | |        | |        | |  test4 | |  test5 | |  test6 | |  test7 | |________| |________| |________| |________| 

render them pyramide each row level, first how render using recursion or using while loop? make each level wrapped <ul> , nodes <li>

i'am trying render loop, don't know how, logic?:

    while ($item = $this->dbtree->nextrow()) {          $rows[] = (object)$item;      }     print_r($res); // list of arrays above     exit; 

thanks attention

you can first iterate on array , sort them in levels in application logic:

foreach ($res $resvalue){     if (!isset($levelsorted[$resvalue['level'])){         $levelsorted[$resvalue['level'] = array();     }     $levelsorted[$resvalue['level'][] = $resvalue; } 

in view can this:

foreach ($levelsorted $level => $levelres){     echo '<ul id="level' . $level . '">';     foreach ($levelres $singleres){         echo '<li>' . $singleres['name'] . '</li>';     }     echo '</ul>'; } 

at end, have more 1 loop, consistent mvc pattern.


Comments

Popular posts from this blog

python - Subclassed QStyledItemDelegate ignores Stylesheet -

java - HttpClient 3.1 Connection pooling vs HttpClient 4.3.2 -

SQL: Divide the sum of values in one table with the count of rows in another -