echo

(PHP 3, PHP 4 )

echo -- Affiche une chaîne de caractères

Description

void echo ( string arg1 [, string argn...])

Affiche tous les paramètres.

echo() n'est pas vraiment une fonction (c'est techniquement une structure du langage). Cela fait que vous n'êtes pas obligés d'utiliser des parenthèses. En fait, si vous voulez passer plusieurs paramètres à afficher, vous ne devez pas utiliser de parenthèses. Il n'est pas possible d'utiliser echo() dans un contexte de fonction variable. Dans ce cas, il faut utiliser print() à la place.

Exemple 1. Exemples avec echo()

<?php
  
echo "Bonjour le monde";

echo
"Cet echo() se
r&eacute;partit sur plusieurs lignes. Il affiche aussi les
nouvelles lignes"
;

echo
"Cet echo() se\nr&eacute;partit sur plusieurs lignes. Il affiche aussi les\nnouvelles lignes";

echo
"L'&eacute;chappement de caract&egrave;res se fait : \"comme ceci\".";

// Vous pouvez utiliser des variables avec echo()
$foo = "foobar";
$bar = "barbaz";

echo
"foo vaut \"$foo\""; // foo vaut "foobar"

// Vous pouvez aussi utiliser des tableaux
$bar = array("clef" => "foo");

echo
"c'est {$bar['clef']} !"; // c'est foo !

// Les guillemets simples annulent le remplacement des variables
echo 'foo vaut $foo'; // foo vaut $foo

// Si vous n'utilisez pas d'autres caract&egrave;res,
// vous pouvez afficher plusieurs variables
// en les s&eacute;parant par des virgules
echo $foo;          // foobar
echo $foo,$bar;     // foobarbarbaz

echo <<<END
Cette syntaxe s'intitule le "here document" et
permet d'afficher plusieurs lignes avec de
l'interpolation de variables. Notez que la fin de
la syntaxe doit appara&icirc;tre sur une nouvelle ligne,
avec uniquement un point-virgule, et pas d'espace
de plus !
END;

// comme echo() n'est pas une fonction, le code suivant n'est pas valide
($some_var) ? echo('Oui'): echo('Non');

// Cependant, les lignes suivantes sont valides :
($some_var) ? print('Oui'): print('Non'); // print est une fonction
echo $some_var ? 'Oui': 'Non';
?>

echo() dispose aussi d'une version courte, où vous pouvez faire suivre la balise PHP ouvrante d'un signe égal (=).

Exemple 2. Afficher sans l'aide de echo()

J'ai <?=$foo?> fous.

Note : Cette syntaxe courte n'est possible que si la configuration de short_open_tag a été activée.

Pour une brève discussion à propos des différences entre print() et echo(), consultez cet article des FAQTs Knowledge Base : http://www.faqts.com/knowledge_base/view.phtml/aid/1/fid/40

Note : Comme ceci est une structure du langage, et non pas une fonction, il n'est pas possible de l'appeler avec les variables fonctions.

Voir aussi print(), printf() et flush().