Fonction recursive pour un arbre
Bonjour,
J'ai un base mysql qui contient des informations sur un arbre tout simple dont chaque branche a une valeur :
id
nom
valeur
id_parent
Je cherche a recuperer un tableau comme suit :
$tableau['nomniveau0'] = valeur;
$tableau['nomniveau0-nomniveau1'] = valeur;
$tableau['nomniveau0-nomniveau1-nomniveau2'] = valeur;
etc.
Mais je ne m'en sors pas du tout.
Voici une de mes maigres tentatives pour essayer déjà d'afficher mon but :
Code:
1 2 3 4 5 6 7 8 9
| function arbo($c01, $nom="", $parent=0) {
$sql = 'SELECT * FROM arbre WHERE id_parent = ' . $parent;
$result = $c01->query($sql);
while ($row = $result->fetch(PDO::FETCH_ASSOC)) {
$nom .= $row['nom']
echo $nom;
arbo($c01, $nom, $row['id']);
}
} |
Y a t'il un moyen de faire ce que je veux ou est-ce que je suis complètement a côté de la plaque ?
PS : j'ai par contre réussi a construire un tableau multidimensionnel reproduisant mon arbre.
Mais cela ne m'arrange pas car je vais devoir creuser plus ou moins profond.
Ce que je veux c'est pouvoir obtenir la valeur a partir de "niveau0-niveau1" par exemple.
Merci pour votre aide.