récupérer un tableau

  • Auteur de la discussion Auteur de la discussion heb
  • Date de début Date de début
Nouveau WRInaute
bonjour à tous,

je souhaite récupérer manuellement le contenu du tableau suivant :

Code:
Caddie Object ( [articles] => Array ( [0] => 23 [1] => 43 [2] => 31 ) [quantite] => Array ( [0] => 1 [1] => 1 [2] => 1 ) [poids] => Array ( [0] => 0 [1] => 0 [2] => 0 ) [total] => 62.349999326246 [total_ht] => 55.5403868259 [total_quantite] => 3

il s'agit du tableau de ma classe caddie.

je souhaite récupérer les id des articles (23,43,31), le poids et le total.

j'ai essayé ceci :

Code:
function afficher_tableau($tableau)  
    { 
    // on fait une boucle qui lit les éléments du tableau 
    foreach ($tableau as $cle=>$valeur)  
        { 
        // si l'un des éléments est lui même un tableau 
        // alors on applique la fonction à ce tableau 
        if(is_array($valeur))  
            { 
            // on affiche le nom de la clé et 
            // le début d'une liste pour 
            //  décaler le contenu vers la droite 
            echo $cle.' : <ul>';  

            // ici se réalise la récursivité 
            // c'est à dire qu'on applique la fonction 
            // à l'élément en cours car c'est lui aussi un tableau 
            afficher_tableau($valeur);  
             
            // on ferme la liste 
            echo '</ul>';  
} 
         
        // si ce n'est pas un tableau 
        // alors on affiche le contenu de l'élément 
        else 
            { 
            echo $cle.' = '.$valeur.' <br>';			
			
   } 
 
        }  
    }  
     
afficher_tableau($a);

ce qui me permet de récupérer :
Code:
articles : 
0 = 23 
1 = 43 
2 = 31 

quantite : 
0 = 1 
1 = 1 
2 = 1 

total = 62.349999326246

mais je n'arrive pas récupérer que les id articles par exemples


merci bien
 
WRInaute occasionnel
Euh...
et ça c'est quoi ?
articles :
0 = 23
1 = 43
2 = 31
J'ai pas compris...
Tu fais simplement :
Code:
$tab[]= array( "articles" => array(23,43,31),"quantite" => array(1,1,1),  "poids" => array (0,0,0), "total" => 62.349999326246, "total_ht" => 55.5403868259, "total_quantite" => 3);

function afficher_tableau($tableau) 
    {
    // on fait une boucle qui lit les éléments du tableau
    foreach ($tableau as $article) 
        {
        // si l'un des éléments est lui même un tableau
        // alors on applique la fonction à ce tableau
        foreach ($article['articles'] as $id)
        echo $id."<br/>"; 
   }

        
    } 
     
afficher_tableau($tab);
 
Nouveau WRInaute
mon tabelau représente la session caddie :

Code:
Caddie Object ( [articles] => Array ( [0] => 23 [1] => 43 [2] => 31 ) [quantite] => Array ( [0] => 1 [1] => 1 [2] => 1 ) [poids] => Array ( [0] => 0 [1] => 0 [2] => 0 ) [total] => 62.349999326246 [total_ht] => 55.5403868259 [total_quantite] => 3

comment arrives tu à ça ?

Code:
$tab[]= array( "articles" => array(23,43,31),"quantite" => array(1,1,1),  "poids" => array (0,0,0), "total" => 62.349999326246, "total_ht" => 55.5403868259, "total_quantite" => 3);
 
WRInaute occasionnel
Tu peux également utiliser les fonctions php natives array_keys et array_values, pour réduire le code. Elles permettent d'extraire soit les clés, soit les valeurs d'un tableau.
 
Nouveau WRInaute
Je ne sais pas si je n'ai pas tout saisi mais si :
Code:
$MonCaddie = new Caddie(...);
....

pourquoi tu ne pioche pas dans :
Code:
$MonCaddie->articles
pour avoir ce que tu veux?
 

➡️ Offre MyRankingMetrics ⬅️

pré-audit SEO gratuit avec RM Tech (+ avis d'expert)
coaching offert aux clients (avec Olivier Duffez ou Fabien Faceries)

Voir les détails ici

coaching SEO
Discussions similaires
Haut