echo
(PHP 3, PHP 4, PHP 5)
echo -- Gibt einen oder mehrere Strings aus
Beschreibung
void
echo ( string arg1 [, string ...] )
Gibt alle als Parameter angegebenen Strings aus.
echo() ist nicht wirklich eine Funktion sondern
ein Sprach-Konstrukt, daher brauchen Sie keine Klammern verwenden.
echo() verhält sich im Gegensatz zu einigen anderen
Sprach-Konstrukten nicht wie eine Funktion, deshalb kann es nicht immer
in einem Funktionskontext verwendet werden. Hinzu kommt, dass bei der
Angabe mehrerer Parameter für echo() diese nicht
von Klammern umschlossen sein dürfen.
Beispiel 1. echo() Beispiele
<?php echo "Hallo World";
echo "Diese Ausgabe geht über mehrere Zeilen. Die Zeilenumbrüche werden ebenfalls ausgegeben.";
echo "Diese Ausgabe geht über\nmehrere Zeilen. Die Zeilenumbrüche werden\nebenfalls ausgegeben.";
echo "Escape Zeichen werden \"so realisiert\".";
// Sie können Variablen innerhalb eines echo-Statements verwenden $foo = "foobar"; $bar = "barbaz";
echo "foo ist $foo"; // foo ist foobar
// Sie können auch Arrays nutzen $bar = array("wert" => "foo");
echo "Das ist {$bar['wert']} !"; // Das ist foo !
// Wenn Sie einfache Anführungszeichen verwenden, wird der Name der Variable // anstelle ihres Inhalts ausgegeben echo 'foo ist $foo'; // foo ist $foo
// Sie können auch ausschließlich Variablen ausgeben, // sofern Sie keine weiteren Zeichen ausgeben wollen echo $foo; // foobar echo $foo,$bar; // foobarbarbaz
// Einige Programmierer bevorzugen es, mehrere Parameter // mithilfe von Stringverkettung auszugeben echo 'Dieser ', 'String ', 'besteht ', 'aus ', 'mehreren Parametern.', chr(10); echo 'Dieser ' . 'String ' . 'wurde ' . 'mit ' . 'Stringverkettung erzeugt.' . "\n";
echo <<<END Hier wird die "here document"-Syntax verwendet, um mehrere Zeilen mit $variablen Interpolation auszugeben. Beachten Sie, dass das sich das "here document"-Endzeichen in einer Zeile mit nur einem Strichpunkt aber ohne Leerzeichen o.ä. stehen muss! END;
// Da echo sich nicht wie eine Funktion verhält, ist der folgende Code ungültig. ($eine_variable) ? echo('true'): echo('false');
// Folgende Beispiele funktionieren hingegen: ($eine_variable) ? print('true'): print('false'); // print ist ebenfalls ein // Konstrukt, aber es verhält sich wie eine Funktion, // so dass es in diesem Kontext verwendet werden kann echo $eine_variable ? 'true': 'false'; // Das Statement herumgedreht ?>
|
|
echo() besitzt zusätzlich eine Syntax-Kurzform, Sie
können also ein öffnendes PHP-Tag von einem Gleichheitszeichen gefolgt
notieren. Diese Syntax-Kurzform funktioniert nur, wenn short_open_tag in der php.ini
eingeschaltet ist.
Eine kurze Erörterung über die Unterschiede zwischen print()
und echo() finden Sie in folgendem FAQT Knowledge
Base-Artikel: http://www.faqts.com/knowledge_base/view.phtml/aid/1/fid/40
Anmerkung: Da dies ein Sprachkonstrukt
und keine Funktion ist, deshalb können Sie dieses nicht mit
Variablenfunktionen
verwenden.
Siehe auch
print(),
printf() und
flush().