IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

array imbriqué : afficher les numéros de ligne d'un menu arborescent


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 15
    Par défaut array imbriqué : afficher les numéros de ligne d'un menu arborescent
    J'ai un tableau imbriqué.
    Ce tableau représente une arborescence de famille.
    Je parviens à afficher le numéro du niveau.
    Mais si je souhaite numéroter chaque ligne, j'ai un problème avec mon compteur.

    Voici le code du tableau :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $arraytree=array("Racine"=>array("Branche 1"=>array("Sous Branche1"=>"Feuille 1","Sous Branche 2"=>"Feuille 2","Sous Branche 3"=>"Feuille 3"),"Branche2"=>"Feuille 3","Branche 3"=>array("Sous Branche33"=>"Feuille 33","Sous Branche 2"=>array("Sous Branche fin"=>"Feuille fin"))));
    Je mets le tableau dans le paramètre $array de la fonction récursive ci dessous :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
    function addtiret ($father,$array,$niveau,$compteur) {// id racine / tableau / niveau de profondeur / compteur de ligne
            echo "<ul>\n";
    $niveau++;
    //$compteur++;
           while ( list ($tag,$value) = each ($array) ) {
    //$compteur++;
                    if ( is_array($value)==TRUE) {
    //$compteur++;// 
                            echo "<li>$father -> $tag <b>noeud</b> niveau $niveau ligne $compteur";
     
    						echo "<br>\n";					
    $compteur++;						
    						addtiret ($tag,$value,$niveau,$compteur);
                            } else {
    //$compteur++;
                            echo "<li>$father -> $tag : $value niveau $niveau ligne $compteur";
     
    						echo "<br>\n";
    //$compteur++;						
                            }
    $compteur++;
                    }
            echo "</ul>\n";
    }
    J'obtiens une erreur de numérotation à la ligne 6


    Pouvez vous m'expliquer ?
    Merci

  2. #2
    Membre chevronné Avatar de d-Rek
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    438
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2007
    Messages : 438
    Par défaut
    C'est une obligation les li ?
    Sinon le CSS fait très bien ça sur les ol :
    Code CSS : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ol{
    	list-style-type:decimal;
    }

Discussions similaires

  1. "Red Hat Developer Studio" afficher les numéros de ligne
    Par artotal dans le forum Eclipse Java
    Réponses: 0
    Dernier message: 06/12/2007, 22h29
  2. Je n'arrive pas à afficher les numéro de ligne
    Par erehcab dans le forum Eclipse PHP
    Réponses: 1
    Dernier message: 01/10/2007, 11h59
  3. Comment afficher les numéros de lignes ?
    Par dr23fr dans le forum Eclipse Java
    Réponses: 4
    Dernier message: 05/07/2006, 10h35
  4. Réponses: 2
    Dernier message: 13/06/2006, 15h45
  5. [debutant] afficher les numéros de lignes
    Par ameliepim dans le forum MFC
    Réponses: 4
    Dernier message: 07/06/2006, 10h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo