fonction récursive
Posté : 16 oct. 2010, 09:07
bonjour
je galère depuis quelques heures déjà sur mon petit problème. Les fonction récursives, je ne domine pas.
voila, je doit simplement lister des catégories.
exemple :
j'ai les catégories suivantes
Cat principale 1
-- Ss catégorie 1
-- Ss catégorie 2
-- Ss catégorie 3
-- -- Ss Ss catégorie 1
Cat principale 2
-- Ss catégorie 1
-- Ss catégorie 2
-- -- <souligne>Ss Ss catégorie 1 </souligne>
-- Ss catégorie 3
je suis dans la sous sous catégorie 1 de la cat princiale 2 (en souligné ici) et je veux afficher :
Cat principale 2 > Ss catégorie 2 > Ss Ss catégorie 1.
j'ai donc créé cette fonction pour y parvenir
$niveau, = je ne m'en sert pas pour le moment, mais il représente le niveau de catégorie ici c'est le départ donc 0
$array = un tableau associatif de toutes mes catégories
Mais je ne parvient pas à obtenir le résultat escompté
Donc voila, si quelqu'un pouvait m'aider solutionner ce problème
je galère depuis quelques heures déjà sur mon petit problème. Les fonction récursives, je ne domine pas.
voila, je doit simplement lister des catégories.
exemple :
j'ai les catégories suivantes
Cat principale 1
-- Ss catégorie 1
-- Ss catégorie 2
-- Ss catégorie 3
-- -- Ss Ss catégorie 1
Cat principale 2
-- Ss catégorie 1
-- Ss catégorie 2
-- -- <souligne>Ss Ss catégorie 1 </souligne>
-- Ss catégorie 3
je suis dans la sous sous catégorie 1 de la cat princiale 2 (en souligné ici) et je veux afficher :
Cat principale 2 > Ss catégorie 2 > Ss Ss catégorie 1.
j'ai donc créé cette fonction pour y parvenir
function arrayNavigueBoutique($parent,$niveau,$array) {
//==> boucle d'affichage des cat
foreach ($array AS $noeud)
{
if ($parent == $noeud['cat_id'])
{
$parent = $noeud['cat_id_parent'];
$array2['cat_id'][] = $noeud['cat_id'];
$array2['cat_nom'][] = $noeud['cat_nom'];
$array2['cat_id_parent'][] = $noeud['cat_id_parent'];
// récusrsivité pour sous catégories
arrayNavigueBoutique($parent,($niveau + 1),$array);
}
}
return $array2;
}
$parent = l'id de la catégorie active$niveau, = je ne m'en sert pas pour le moment, mais il représente le niveau de catégorie ici c'est le départ donc 0
$array = un tableau associatif de toutes mes catégories
Mais je ne parvient pas à obtenir le résultat escompté
Donc voila, si quelqu'un pouvait m'aider solutionner ce problème