Fonction d'affichage de tableau (arrays)

Soyez le premier à donner votre avis sur cette source.

Snippet vu 6 855 fois - Téléchargée 29 fois

Contenu du snippet

C'est une fonction pour afficher un tableau...
c'est surtout un script pour debuger un code, lorsqu'on a besoin de savoir ce que contien un tableau..
Vous pouvez le mettre dans un fichier style function.inc et l'inclure dans votre page :
<? include ("function.inc"); ?>

Source / Exemple :


//La fonction en elle meme
<?
function afficher_tableau($tableau,$titre="",$niveau=0) {
	// Paramètres
	//  - $tableau =  tableau dont il faut afficher le contenu
	//  - $titre = titre à afficher au dessus du contenu
	//  - $niveau = niveau d'affichage
	// s'il y a un titre, l'afficher
	if ($titre != "") {
		echo "<P><B>$titre</B></BR>\n";
	}
	//tester s'il y a des données
	if (isset($tableau)) { //il y a des données
		//parcourir le tableau passé en paramètre
		reset ($tableau);
		while (list ($cle, $valeur) = each ($tableau)) {
			//afficher la clé (avec identation en fonction du niveau)
			echo
				str_pad("",12*$niveau, "&nbsp;").
				 htmlentities($cle)." = ";
			//afficher la valeur
			if (is_array($valeur)) { //c'est un tableau...!
			 //mettre une balise <BR>
			 echo "<BR>";
			 //et appeler recursivement afficher_tableau pour
			 //afficher le tableau en question (sans titre et
			 //au niveau supérieur pour l'identation)
			 afficher_tableau($valeur,"",$niveau+1);
		  } else { //c'est une valeur scalaire
		     //afficher la valeur
			 echo htmlentities($valeur)."<BR>";
		}
	}
   } else { //pas de données
	  //mettre une simple balise <BR>  	 
	  echo "<BR>\n";
	}	 
} 
?>	

<?
//un exemple de son utilisation...

//afficher un tableau de couleurs
$couleurs = array("Bleu","Blanc","Rouge");
afficher_tableau($couleurs,"Couleurs");
//afficher un tableau de pays
$pays = array("FR" => "France","IT" => "Italie");
afficher_tableau($pays,"Pays");
//afficher un tableua à deux dimensions (clr et pays)
$cp = array("couleurs" => $couleurs,"pays" => $pays);
afficher_tableau($cp,"Couleurs & Pays");
?>

Conclusion :


Le résultat devrait ressembler à ça :
Couleurs
0 = Bleu
1 = Blanc
2 = Rouge

Pays
FR = France
IT = Italie

Couleurs & Pays
couleurs =
0 = Bleu
1 = Blanc
2 = Rouge
pays =
FR = France
IT = Italie

Pour ê rigoureu il fodré tester ke la var passée initialement en 1er param est bien un tablo, mé bon vu kcé pr ds tests ...
dites moi ce ke vs en pensez ^^

A voir également

Ajouter un commentaire

Commentaires

Noiretulipe
Messages postés
165
Date d'inscription
mardi 21 janvier 2003
Statut
Membre
Dernière intervention
13 juillet 2008
-
C'est toujours plus joli qu'un print_r et puis détourné, ça donne quelques idées ...
MisterJAD
Messages postés
86
Date d'inscription
jeudi 18 juillet 2002
Statut
Membre
Dernière intervention
26 avril 2005
-
arrrrf, j'avais complétmt survolé ce print_r ....
:'( jeme suis graaaave embeté pour rien .... enfin bon, ça m'a fait les doits!
BeB3RePHPLover
Messages postés
23
Date d'inscription
dimanche 2 février 2003
Statut
Membre
Dernière intervention
3 septembre 2003
-
carément en plus print_r c vraiment une fonction primaire en php ... mais c complexe a reprogrammer .. donc bravo kan meme ^^
cs_Tortuegeniale
Messages postés
1123
Date d'inscription
lundi 7 janvier 2002
Statut
Membre
Dernière intervention
26 juin 2008
1 -
En plus une source du meme genre existe déjà sur le site ...
cs_Kirua
Messages postés
3006
Date d'inscription
dimanche 14 avril 2002
Statut
Membre
Dernière intervention
31 décembre 2008
-
print_r()
j'allais le dire.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Du même auteur (MisterJAD)