HOWTO · PHP

Comment faire écho ou imprimer un tableau en PHP

Cet article présente comment faire écho ou imprimer un tableau en PHP. Il inclut la boucle foreach, la fonction print_r() et la fonction var_dump().

Sur cette page

Un tableau ne peut pas être transmis directement à echo pour afficher ses valeurs sous forme de liste lisible. En PHP, utilisez foreach pour formater chaque valeur vous-même, print_r() pour obtenir une représentation lisible avec les clés, ou var_dump() pour examiner des détails de diagnostic comme les types des valeurs. Les exemples ci-dessous utilisent la même liste de fleurs pour faciliter la comparaison des résultats.

Utiliser la boucle foreach pour afficher un tableau en PHP

Une boucle foreach affecte chaque valeur du tableau à une variable de boucle, une itération à la fois. Cette variable est disponible dans le corps de la boucle : vous pouvez l’envoyer à echo, lui ajouter des libellés ou appliquer d’autres mises en forme. La boucle parcourt le tableau pour vous ; vous n’avez pas à avancer vous-même un pointeur de tableau.

Exécutez cet exemple :

Le code et les libellés ou sorties affichés dans cette section restent en anglais.

<?php
$flowers = ["Rose", "Lili", "Jasmine", "Hibiscus", "Tulip", "Sun Flower", "Daffodil", "Daisy"];
echo "The array is:\n";
foreach ($flowers as $flower) {
    echo $flower . "\n";
}
?>
The array is:
Rose
Lili
Jasmine
Hibiscus
Tulip
Sun Flower
Daffodil
Daisy

Cette méthode affiche uniquement les valeurs, dans leur ordre d’itération. Utilisez la forme key => value de foreach si vous avez également besoin de chaque clé. L’exemple actuel utilise un tableau indexé numériquement : les valeurs s’affichent donc sans libellé d’index.

Utiliser la fonction print_r() pour afficher un tableau en PHP

print_r() produit une représentation lisible qui inclut chaque clé du tableau et la valeur associée. Cette fonction permet d’examiner l’ensemble du contenu sans écrire de boucle ni mettre chaque élément en forme. Son deuxième argument, souvent appelé paramètre de retour, est facultatif et vaut false par défaut : la fonction affiche alors la représentation. Si vous transmettez true, elle renvoie plutôt cette représentation sous forme de chaîne, que vous pouvez stocker ou combiner avec d’autres textes.

Le code et les libellés ou sorties affichés dans cette section restent en anglais.

<?php
$flowers = ["Rose", "Lili", "Jasmine", "Hibiscus", "Tulip", "Sun Flower", "Daffodil", "Daisy"];
print_r($flowers);
?>
Array
(
    [0] => Rose
    [1] => Lili
    [2] => Jasmine
    [3] => Hibiscus
    [4] => Tulip
    [5] => Sun Flower
    [6] => Daffodil
    [7] => Daisy
)

Par exemple, $representation = print_r($flowers, true); récupère le texte mis en forme au lieu de l’afficher immédiatement. Choisissez cette méthode pour obtenir une vue compacte et lisible par une personne ; elle n’indique pas le type PHP de chaque valeur.

Utiliser la fonction var_dump() pour afficher un tableau en PHP

var_dump() est destinée au débogage. Elle émet une représentation de diagnostic qui indique la taille du tableau, ses clés, les types des valeurs et la longueur des chaînes. Contrairement à print_r(), elle ne renvoie pas cette représentation sous forme de chaîne pour un usage courant ; sa valeur de retour n’est pas le texte du diagnostic mis en forme. Elle est donc utile pour vérifier les valeurs conservées par PHP, mais moins adaptée à un affichage destiné aux utilisateurs.

Le code et les libellés ou sorties affichés dans cette section restent en anglais.

<?php
$flowers = ["Rose", "Lili", "Jasmine", "Hibiscus", "Tulip", "Sun Flower", "Daffodil", "Daisy"];
var_dump($flowers);
?>
array(8) {
  [0]=>
  string(4) "Rose"
  [1]=>
  string(4) "Lili"
  [2]=>
  string(7) "Jasmine"
  [3]=>
  string(8) "Hibiscus"
  [4]=>
  string(5) "Tulip"
  [5]=>
  string(10) "Sun Flower"
  [6]=>
  string(8) "Daffodil"
  [7]=>
  string(5) "Daisy"
}

Utilisez foreach lorsque vous souhaitez contrôler l’affichage des valeurs, print_r() pour obtenir un aperçu lisible des clés et des valeurs, et var_dump() pour examiner les types et les longueurs pendant le débogage. Ces exemples utilisent des chaînes simples ; avec des tableaux imbriqués, les fonctions d’inspection représentent également le contenu imbriqué, tandis qu’une mise en forme personnalisée avec foreach vous oblige à choisir comment parcourir ces structures.