Maison >développement back-end >tutoriel php >Pourquoi `print_r` génère-t-il un « 1 » en PHP ?

Pourquoi `print_r` génère-t-il un « 1 » en PHP ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-07 03:59:02498parcourir

Why Does `print_r` Output a

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn