Maison >développement back-end >tutoriel php >Pourquoi `print_r` génère-t-il un « 1 » en PHP ?
Dévoilement du mystère du "1" dans la sortie print_r de PHP
Lors de l'utilisation de la fonction print_r de PHP pour afficher le contenu d'un objet ou d'un tableau, vous pouvez rencontrer un nombre énigmatique « 1 » ajouté à la fin de la sortie. Ce caractère apparemment anodin a suscité la curiosité et la confusion parmi les développeurs PHP.
Comprendre la verbosité de print_r
print_r est une fonction polyvalente qui offre des niveaux de verbosité réglables pour l'affichage des données. Le niveau de verbosité par défaut est 1, indiquant que la fonction imprime les données dans un format concis et lisible par l'homme. Cependant, si vous spécifiez explicitement print_r($var, true) avec true comme deuxième paramètre, il passera en mode détaillé, révélant des informations plus détaillées sur la structure des données, y compris son type, son allocation et d'autres attributs spécifiques.
Écho ou simple impression
Lorsque vous exécutez print_r($var) sans utiliser echo, la fonction imprime simplement les données sur le flux de sortie standard. Dans ce scénario, le nombre « 1 » que vous avez observé n’est pas pertinent pour la sortie elle-même ; cela signifie simplement la valeur de retour de print_r, qui est le nombre total d'octets écrits dans le flux de sortie.
En écho à print_r
La situation change lorsque vous faites écho à print_r( $var). Cette combinaison imprime la sortie de la fonction print_r sur la page Web ou la console. Dans ce contexte, le « 1 » fait partie de la sortie affichée aux côtés de la structure de données.
Résoudre le problème
Pour éviter que le « 1 » n'encombre votre sortie , vous pouvez simplement omettre la construction echo, permettant à print_r d'écrire les données directement dans le flux de sortie :
print_r($view);
En utilisant print_r de manière appropriée, vous pouvez afficher efficacement les structures de données, que ce soit pour le débogage ou la visualisation d'objets complexes et tableaux. N'oubliez pas qu'il est beaucoup plus efficace de se concentrer sur la compréhension des données réelles plutôt que sur l'interprétation des détails techniques du résultat.
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!