2 $result = $this->db
->safe_query_fetch('SELECT * FROM category');
4 function addleaf(&$tree, $levels, $category='') {
5 if(!count($levels)) return;
6 $current = array_shift($levels);
7 $category .= '/'.$current;
8 if(!isset($tree[$current])) $tree[$current] = array();
9 $tree[$current]['__PATH__'] = $category;
10 addleaf($tree[$current], $levels, $category);
14 foreach($result as $row) {
15 $row_parts = preg_split('/\//', $row['category_name']);
16 addleaf($tree, $row_parts);
19 function render_tree($tree, $pathindex='__PATH__') {
20 if(!is_array($tree)) return '';
22 foreach($tree as $name => $subtree) if($name != $pathindex) {
23 $html.='<li><b>'.$name.'</b> <small>('.$subtree[$pathindex].')</small>'.render_tree($subtree).'</li>';
28 echo render_tree($tree);
This page took 0.245099 seconds and 4 git commands to generate.