VAR_DUMP |
Sortir la variable |
---|---|
PHP 4+ |
Syntaxe
function var_dump($variable); |
function var_dump($variable,...); |
Paramètres
Nom | Description | |
---|---|---|
$valeur | Ce paramètre permet d'indiquer la variable à analyser. |
Retour
Aucun
Description
Cette fonction permet de sortir sur la sortie standard (généralement la page Web) les informations de données contenu dans une variable en incluant ses structures ou tableau s'il y a lieu.
Remarques
- var_dump vs var_export vs print_r : Dans les 3 cas, on peut obtenir le contenu de variable. Cependant, des différences majeurs existantes entre ses 3 fonctions. Ainsi, «var_dump» se veut une solution pour le déboguage, «print_r» ce veut également une solution pour le déboguage mais il n'inclus pas les types des membres, mais offre la possibilité de sortir le résultat dans une chaîne de caractères ou la sortie standard, enfin, la fonction «var_export» affiche un code PHP pouvant être inclus dans un code source PHP.
- Si vous souhaitez afficher le contenu en hexadécimal d'une chaîne de caractères, vous devriez plutôt utiliser la fonction bin2hex() comme ceci :
- echo chunk_split(bin2hex($machaine), 2, ' ');
- On peut envoyer dans une chaine de caractères le contenu du résultat de la fonction «var_dump» de la façon suivante :
- <?php
- ob_start();
- var_dump($maVariable);
- $resultat = ob_get_clean();
- ?>
- XDebug : Si vous utilisez le «xdebug», la limite de profondeur d'exploration des éléments de tableau et d'objet est de 3. Pour accéder à plus de profondeur, vous devrez changer le paramètre «xdebug.var_display_max_depth=n» du fichier «xdebug.ini».
- Symfony : Si vous utilisez le cadre d'application «Symfony», il peut provoquer un débordement des capacités à cause de référence circulaire, dans cette situation, vous devriez envisager d'utiliser la classe «TVarDumper» du cadre d'application PRADO situé dans le fichier «/Util/TVarDumper.php» ou la méthode «Debug::dump» de Doctrine situé dans le fichier «/Doctrine/Common/Util/Debug.php».
- Il est parfois préférable d'utiliser la fonction «print_r» avec le paramètre «true» pour obtenir une chaine de caractères plutôt que d'utiliser cette fonction.
- Vous pouvez utiliser cette fonction dans un gabarit «Smarty», pour ce faire, vous devriez utiliser la syntaxe suivante «{$var|@var_dump}».
- ColdFusion : Si vous souhaitez utiliser la même fonctionnalité dans le langage de programmation ColdFusion, vous devriez envisager d'utiliser la balise «CFDUMP» de la façon suivante «<cfdump var="#nomdemavariable#"/>».
- Méthode ou fonction d'un objet : Bien que la fonction var_dump soit très puissante pour retourner le contenu des variables de n'importe quel type, elle ne retourne pas les méthodes ou les fonctions d'un objet ou d'une classe. Pour obtenir les méthodes d'un objet, il faut plutôt utilisé la fonction get_class_methods.
- Nom d'un objet ou d'une classe : Vous pouvez demander le nom d'une classe ou d'un objet en utilisant la fonction get_class.
Ou utiliser l'exemple suivant pour séparer les codes hexadécimal à tous les 2 chiffres :
Exemple
Voici quelques exemples typiques de l'utilisation de cette fonction :
Essayer maintenant !
on obtiendra le résultat suivant :
int(1) string(10) "Gladir.com" array(2) { [0]=> string(7) "Sylvain" [1]=> string(7) "Maltais" } array(3) { ["A"]=> int(1) ["B"]=> int(2) ["C"]=> int(3) } array(3) { [0]=> string(10) "Salutation" ["Prenom"]=> string(7) "Sylvain" ["Nom"]=> string(7) "Maltais" } NULLVoir également
Langage de programmation - PHP - Référence de procédures et fonctions - print_r
Langage de programmation - PHP - Smarty - Introduction
Dernière mise à jour : Mardi, le 5 mai 2015