Difference entre sfOutputEscaperArrayDecorator et Array
Bonjour,
j'essais de construire un menu hiérarchique avec une fonction recursive :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
function afficher_menu($parent, $niveau, $array) {
$html = "";
foreach ( $array as $noeud ) {
if ($parent == $noeud->getIdParent()) {
for($i = 0; $i < $niveau; $i ++)
$html .= "-";
$html .= " " . $noeud->getLibelle(). "<br />";
$html .= afficher_menu ( $noeud->getId(), ($niveau + 1), $array );
}
}
return $html;
} |
Lorsque je passe un array a ma méthode j'obtiens bien mon menu hiérarchique alors qu'avec un sfOutputEscaperArrayDecorator j'obtiens que le premier sous-menu.
Ex :
[(id=1;idParent=0;libelle=racine),(id=2;idParent=1;libelle=ss-menu1),(id=3;idParent=1;libelle=ss-menu2)]
Cas Array :
racine
- ss-menu1
- ss-menu2
Cas sfOutputEscaperArrayDecorator :
racine
- ss-menu1
Quelqu'un peut me dire ou est-ce que sa cloche.
Merci