Guest User

Untitled

a guest
Oct 21st, 2017
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.10 KB | None | 0 0
  1. foreach ($orgao as $c) :
  2.                 $menuItens[$c->id_pai][$c->id] = array('link' => $c->id, 'name' => $c->nome);
  3.             endforeach;
  4.        
  5.             echo '<input type="radio" checked="checked" name="id_pai" value="0"/> Ninguem';
  6.             function imprimeMenuInfinito( array $menuTotal , $idPai = 0, $nivel = 0 )
  7.             {
  8.                 // abrimos a ul do menu principal
  9.                     echo str_repeat( "\t" , $nivel ),'<ul id="orgaos">',PHP_EOL;
  10.                    
  11.            
  12.                 // itera o array de acordo com o idPai passado como parâmetro na função
  13.                 foreach( $menuTotal[$idPai] as $idMenu => $menuItem)
  14.                 {
  15.                 // imprime o item do menu
  16.                     echo str_repeat( "\t" , $nivel + 1 ),'<li> <input type="radio" name="id_pai" value="'.$idMenu.'"/>',$menuItem['name'],'',PHP_EOL;
  17.                 // se o menu desta iteração tiver submenus, chama novamente a função
  18.                 if( isset( $menuTotal[$idMenu] ) ) imprimeMenuInfinito( $menuTotal , $idMenu , $nivel + 2);
  19.                 // fecha o li do item do menu
  20.                     echo str_repeat( "\t" , $nivel + 1 ),'</li>',PHP_EOL;
  21.                 }
  22.                 // fecha o ul do menu principal
  23.                    
  24.                     echo str_repeat( "\t" , $nivel ),'</ul>',PHP_EOL;
  25.                    
  26.             }
  27.        
  28.         imprimeMenuInfinito($menuItens);
Add Comment
Please, Sign In to add comment