Lister tableau $_SESSION, $_SERVEUR...

Résolu
Messages postés
185
Date d'inscription
samedi 21 mai 2005
Statut
Membre
Dernière intervention
16 juillet 2016
-
Messages postés
449
Date d'inscription
jeudi 26 août 2004
Statut
Membre
Dernière intervention
5 mars 2009
-
bonjour,

j'aimerai trouver un truc pour lister tout le contenu des tableaux globaux $_SESSION $_SERVEUR..., enfin je sais pas si ce sont des tableaux, d'ailleurs, je sais qu'on parle aussi de tableau associatif ou liste de hashage... bref
c'est pour apprendre à quoi ils servent déjà, ce qu'il continenent, et puis pour savoir quoi...
donc, comment utiliser un truc du type :

foreach($_SESSION as $key=>$value){echo  "$key=$value";}

ou un truc comme ça, je ne maitrise pas le foreach, si quelqu'un pouvait me filer le code ??

merci

9 réponses

Messages postés
449
Date d'inscription
jeudi 26 août 2004
Statut
Membre
Dernière intervention
5 mars 2009

Salut !

foreach() permet de lister un tableau sans connaitre le nombre de case et permet egalement de recuperer le nom des index. L'utilisation est simple :
- si tu veux uniquement lister les cases de ton tableau en affichant seulement la valeur  de chaque case, tu tapes

foreach ( $TableauALister as $Value )
    echo $Value, '
';

qui va afficher la valeur de cahque case de ton tableau a lister (donc tu met ici $_SESSION[]ou autre chose...)

- si tu as indexe ton tableau avec des noms (comme le permet php) et que tu veux recuperer la valeur de chaque index en plus de la valeur de la case indexee par cet index (sa va tu suis ?), tu utilise foreach comme ceci :

foreach ( $TableauALister as $Index => $Valeur )
    echo 'Valeur de l\'index : ', $Index, '
Valeur de la case : ', $Valeur;

C'est simple et c'est tres pratique
Si jamais tu veux plus d'info (j'ai donne des exemples tres basiques), tu peut aller faire un tour sur php.net, qui reference toutes les focntions php possible est imaginable (tu peut meme telecharger un fichier chm pour le regarder au chaud sur ton pc ^^)

Petit probleme, foreach() est lent, plus rapide qu'un while(list() = each()) mais mois qu'un for(). Si jamais tu veux etre rapide pour ne prendre que des valeurs (sans les index), tu peut utilsier la fonction count() qui te permet de connaitre la taille precisement d'un tableau. Completement inutile avec foreach(),peut etre utile des fois dans d'autre cas (c'est mon avis en tout cas). Dans tout les cas, il est interessant de connaitre plusieurs facon de faire pour un probleme donne.

En esperant que sa te serves, @++
Messages postés
185
Date d'inscription
samedi 21 mai 2005
Statut
Membre
Dernière intervention
16 juillet 2016

Il me met :
Warning: Invalid argument supplied for foreach()  

foreach($_SESSION[] as $key=>$value){
    echo "$key=$value
";
}
Messages postés
185
Date d'inscription
samedi 21 mai 2005
Statut
Membre
Dernière intervention
16 juillet 2016

et pour ça aussi
oreach($_SESSION as $key=>$value){
    echo "$key=$value
";
}
Messages postés
449
Date d'inscription
jeudi 26 août 2004
Statut
Membre
Dernière intervention
5 mars 2009

heu ... attend je cherche une reponse vite fait (j'ai eu le meme probleme quand j'ai voulu le faire ..)
Messages postés
449
Date d'inscription
jeudi 26 août 2004
Statut
Membre
Dernière intervention
5 mars 2009

Ah ba non alors ... voila mon code et sa fonctionne impec' ...
<?php
    session_start();
    $_SESSION['lol']= 'coucou';
    $_SESSION['lut']= 'ciao';

    foreach ( $_SESSIONas $Index => $Value )
        echo $Index, ';', $Value, '
';

?>

=> http://www.info-party.c4.fr/test.php

T'as du te planter quelque part... t'as bien mis une variable de session au moins ?

++
Messages postés
185
Date d'inscription
samedi 21 mai 2005
Statut
Membre
Dernière intervention
16 juillet 2016

nan mais au départ, c'était pour $_SERVEUR, c pour ça, j'ai pas pensé à créé une variable

on se défend comme on peut
Messages postés
449
Date d'inscription
jeudi 26 août 2004
Statut
Membre
Dernière intervention
5 mars 2009

pas grave, sa arrive
Messages postés
67
Date d'inscription
mardi 25 janvier 2005
Statut
Membre
Dernière intervention
20 octobre 2010

Tu as la fonction print_r qui t'affiche un tableau !!


print("");

print_r($_SESSION);

print("

");


=)
Messages postés
449
Date d'inscription
jeudi 26 août 2004
Statut
Membre
Dernière intervention
5 mars 2009

print_r ?? mmm .. pas mal ! je prends !

@++