Maison >développement back-end >tutoriel php >La différence entre print_r et var_dump lors du test du code PHP
Cet article présente principalement la différence entre print_r et var_dump lors du test du code PHP. Les amis intéressés peuvent s'y référer. J'espère qu'il sera utile à tout le monde.
En parlant de sortie, je dois mentionner l'impression en php.
Le premier est bien sûr l'écho le plus couramment utilisé, echo : afficher une ou plusieurs chaînes
imprimer : le même que l'écho, mais plus lent que l'écho.
print_r :
Imprimer des informations lisibles par l'homme sur la variable Si une chaîne, un entier ou un flottant est donné, la valeur de la variable elle-même sera imprimée. Si un tableau est donné, les clés et les éléments seront affichés dans un certain format. l'objet est similaire à un tableau. N'oubliez pas que print_r() déplacera le pointeur du tableau vers la fin. Utilisez reset() pour ramener le pointeur au début.
var_export : similaire à print_r et var_dump, mais rarement utilisé.
var_dump:
Cette fonction affiche des informations structurelles sur une ou plusieurs expressions, y compris le type et la valeur de l'expression. Les tableaux développeront les valeurs de manière récursive, montrant leur structure par indentation.
La différence entre var_dump et print_r :
var_dump renvoie le type et la valeur de l'expression tandis que print_r ne renvoie que le résultat. Par rapport au code de débogage, var_dump est plus facile à lire.
Les différences entre print_r(), var_export() et var_dump() sont les suivantes :
par exemple : Sortie d'un tableau bidimensionnel :
$arr=array(array('a'=>'aa','b'=>'bbb','c'=>'ccc'), array('a'=>'ddd','b'=>'eee','c'=>'fff'), array('a'=>'gg','b'=>'hh')); print_r($arr); //print_r输出: //Array ( [0] => Array ( [a] => aa [b] => bbb [c] => ccc ) [1] => Array ( [a] => ddd [b] => eee [c] => fff ) [2] => Array ( [a] => gg [b] => hh ) ) var_export($arr); //var_export输出: //array ( 0 => array ( 'a' => 'aa', 'b' => 'bbb', 'c' => 'ccc', ), 1 => array ( 'a' => 'ddd', 'b' => 'eee', 'c' => 'fff', ), 2 => array ( 'a' => 'gg', 'b' => 'hh', ), ) var_dump($arr); //var_dump输出: /* array (size=3) 0 => array (size=3) 'a' => string 'aa' (length=2) 'b' => string 'bbb' (length=3) 'c' => string 'ccc' (length=3) 1 => array (size=3) 'a' => string 'ddd' (length=3) 'b' => string 'eee' (length=3) 'c' => string 'fff' (length=3) 2 => array (size=2) 'a' => string 'gg' (length=2) 'b' => string 'hh' (length=2) */
sont données ci-dessous Une sortie au format json :
$arr=array(array('a'=>'aa','b'=>'bbb','c'=>'ccc'), array('a'=>'ddd','b'=>'eee','c'=>'fff'), array('a'=>'gg','b'=>'hh')); $arra=json_encode($arr); print_r($arra); //print_r输出: [{"a":"aa","b":"bbb","c":"ccc"},{"a":"ddd","b":"eee","c":"fff"},{"a":"gg","b":"hh"}] var_export($arra); //var_export输出: '[{"a":"aa","b":"bbb","c":"ccc"},{"a":"ddd","b":"eee","c":"fff"},{"a":"gg","b":"hh"}]' var_dump($arra); //var_dump输出: string '[{"a":"aa","b":"bbb","c":"ccc"},{"a":"ddd","b":"eee","c":"fff"},{"a":"gg","b":"hh"}]' (length=84)
Je pense que tout le monde peut comprendre la différence spécifique en un coup d'œil
Recommandations associées :
Tutoriel d'introduction à la fonction d'impression PHP
Introduction détaillée au résumé de la fonction de sortie d'impression PHP
Explication détaillée sur la correction de l'erreur d'impression de la page actuelle en PHP
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!