echo

(PHP 4, PHP 5, PHP 7, PHP 8)

echoGibt einen oder mehrere Strings aus

Beschreibung

echo(string ...$expressions): void

Gibt einen oder mehrere Ausdrücke ohne zusätzliche Zeilenumbrüche oder Leerzeichen aus.

echo ist keine Funktion, sondern ein Sprachkonstrukt. Seine Argumente sind eine Liste von Ausdrücken, die dem Schlüsselwort echo folgen und nicht durch Kommas getrennt und durch Klammern abgegrenzt sind. Im Gegensatz zu einigen anderen Sprachkonstrukten hat echo keinen Rückgabewert, sodass es nicht im Zusammenhang mit einem Ausdruck verwendet werden kann.

echo besitzt zusätzlich eine Syntax-Kurzform, bei der Sie ein Gleichheitszeichen direkt nach einem öffnenden PHP-Tag anfügen. Diese Syntax ist auch bei deaktivierter Konfigurationseinstellung short_open_tag verfügbar.

Ich habe <?=$foo?> foo.

Der Hauptunterschied zu print ist, dass echo mehrere Argumente entgegennimmt, und keinen Rückgabewert hat.

Parameter-Liste

expressions

Ein oder mehrere durch Kommas getrennte String-Ausdrücke, die ausgegeben werden sollen. Nicht-String-Werte werden in Strings umgewandelt, auch wenn die Direktive strict_types aktiviert ist.

Rückgabewerte

Es wird kein Wert zurückgegeben.

Beispiele

Beispiel #1 echo-Beispiele

<?php
echo "echo benötigt keine Klammern.";

// Strings können entweder individuell als mehrere Argumente oder
// miteinander verbunden als einzelnes Argument übergeben werden
echo 'Dieser ''String ''besteht ''aus ''mehreren Parametern.'"\n";
echo 
'Dieser  ' 'String ' 'wurde ' 'mit ' 'Stringverkettung erzeugt.' "\n";

// Es wird kein Zeilenumbruch oder Leerzeichen eingefügt; das Folgende gibt
// "HalloWelt" in einer Zeile aus
echo "Hallo";
echo 
"Welt";

// Dasselbe wie oben
echo "Hallo""Welt";

echo 
"Dieser String umfasst
mehrere Zeilen. Die Zeilenumbrüche
werden mit ausgegeben."
;

echo 
"Dieser String umfasst\nmehrere Zeilen. Die Zeilenumbrüche\nwerden mit ausgegeben.";

// Das Argument kann ein beliebiger Ausdruck sein, der einen String erzeugt
$foo "ein Beispiel";
echo 
"foo ist $foo"// foo ist ein Beispiel

$fruechte = ["Zitrone""Orange""Banane"];
echo 
implode(" und "$fruechte); // Zitrone und Orange und Banane

// Nicht-String-Ausdrücke werden in String umgewandelt, auch wenn
// declare(strict_types=1) verwendet wird
echo 7// 42

// Da echo sich nicht wie ein Ausdruck 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 auch ein Konstrukt,
                         // aber es ist ein gültiger Ausdruck, der 1 zurückgibt,
                         // also kann es in diesem Kontext verwendet werden.

echo $eine_variable 'true''false'// den Ausdruck zuerst auswerten und
                                       // dann an echo übergeben
?>

Anmerkungen

Hinweis: Da dies ein Sprachkonstrukt und keine Funktion ist, können Sie dieses nicht mit Variablenfunktionen oder benannten Parametern verwenden.

Hinweis: Die Verwendung mit Klammern

Wenn ein einzelnes Argument in Klammern an echo übergeben wird, löst das keinen Syntaxfehler aus und erzeugt eine Syntax, die wie ein normaler Funktionsaufruf aussieht. Dies kann jedoch irreführend sein, denn die Klammern sind tatsächlich Teil des auszugebenden Ausdrucks und nicht Teil der echo-Syntax selbst.

<?php
echo "Hallo";
// gibt "Hallo" aus

echo("Hallo");
// gibt auch "Hallo" aus, weil ("Hallo") ein gültiger Ausdruck ist

echo(2) * 3;
// gibt "9" aus; die Klammern bewirken, dass zuerst 1+2 ausgewertet wird, dann 3*3
// Die echo-Anweisung sieht den gesamten Ausdruck als ein Argument

echo "Hallo"" Welt";
// gibt "Hallo Welt" aus

echo("Hallo"), (" Welt");
// gibt "Hallo Welt" aus; die Klammern sind Teil des jeweiligen Ausdrucks

echo("Hallo"" Welt");
// löst eine Syntaxfehler aus, weil ("Hallo", " Welt") kein gültiger Ausdruck ist
?>

Tipp

Die Übergabe mehrerer Argumente an echo kann Schwierigkeiten vermeiden, die durch den Vorrang des Verkettungsoperators in PHP entstehen. Zum Beispiel hat der Verkettungsoperator eine höhere Priorität als der Ternäre und vor PHP 8.0.0 hatte er die gleiche Rangfolge wie die Addition und die Subtraktion:

<?php
// Im Folgenden wird der Ausdruck 'Hallo ' . isset($name) zuerst ausgewertet
// und ist immer wahr, daher ist das Argument für echo immer $name
echo 'Hallo ' . isset($name) ? $name 'Max Mustermann' '!';

// Das beabsichtigte Verhalten erfordert zusätzliche Klammern
echo 'Hallo ' . (isset($name) ? $name 'Max Mustermann') . '!';

// Vor PHP 8.0.0 gibt das folgende "2" aus, statt "Summe: 3"
echo 'Sum: ' 2;

// Auch hier stellt das Hinzufügen von Klammern die beabsichtigte Reihenfolge
// der Auswertung sicher
echo 'Summe: ' . (2);

Falls mehrere Argumente übergeben werden, dann sind Klammern nicht erforderlich, um die Vorrangigkeit zu erzwingen, da jeder Ausdruck für sich steht:

<?php
echo "Hallo ", isset($name) ? $name "Max Mustermann""!";

echo 
"Summe: "2;

Siehe auch

Hier Kannst Du einen Kommentar verfassen


Bitte gib mindestens 10 Zeichen ein.
Wird geladen... Bitte warte.
* Pflichtangabe
Es sind noch keine Kommentare vorhanden.

Was genau bedeutet "Vibe Coding"? Ein tiefgehender Blick für Entwickler

In der Welt der Softwareentwicklung gibt es unzählige Wege, wie man an ein Projekt herangeht. Manche schwören auf strikte Planung, andere auf bewährte Algorithmen und wieder andere lassen sich von etwas ganz anderem leiten: ihrem Gefühl. ...

admin

Autor : admin
Kategorie: Software & Web-Development

PHP cURL-Tutorial: Verwendung von cURL zum Durchführen von HTTP-Anfragen

cURL ist eine leistungsstarke PHP-Erweiterung, die es Ihnen ermöglicht, mit verschiedenen Servern über verschiedene Protokolle wie HTTP, HTTPS, FTP und mehr zu kommunizieren. ...

TheMax

Autor : TheMax
Kategorie: PHP-Tutorials

Midjourney Tutorial - Anleitung für Anfänger

Über Midjourney, dem Tool zur Erstellung digitaler Bilder mithilfe von künstlicher Intelligenz, gibt es ein informatives Video mit dem Titel "Midjourney Tutorial auf Deutsch - Anleitung für Anfänger" ...

Mike94

Autor : Mike94
Kategorie: KI Tutorials

Tutorial veröffentlichen

Tutorial veröffentlichen

Teile Dein Wissen mit anderen Entwicklern weltweit

Du bist Profi in deinem Bereich und möchtest dein Wissen teilen, dann melde dich jetzt an und teile es mit unserer PHP-Community

mehr erfahren

Tutorial veröffentlichen

Welche Unterschiede gibt es zwischen Plinko und ähnlichen Spielen?

In diesem Forum vergleichen Spieler verschiedene Casinospiele hinsichtlich Mechanik, Spannung und Gewinnchancen. Erfahrungen, Meinungen und Analys ...

Geschrieben von rashelahmed am 03.01.2026 19:30:22
Forum: Off-Topic Diskussionen
Wie kann ich eine effiziente Batch-Verarbeitung in PHP mit PDO umsetzen?

For efficient batch processing with PDO, avoid OFFSET on large tables and instead batch by an indexed column (e.g. WHERE id > :lastId LIMIT 1000). ...

Geschrieben von smithjohns am 03.01.2026 09:09:17
Forum: PHP Developer Forum
Überhang in MySql Datenbank

Interesting MySQL issue! Seeing an 'Überhang' (overflow) record when your table is supposedly empty is definitely puzzling. First, try optimizing ...

Geschrieben von 6873marios am 02.01.2026 09:45:40
Forum: SQL / Datenbanken
SESSION werden nicht übergeben

Hmm, komisch, dann muss ich mal weiter forschen, denn rein logisch gesehen sollte das einwandfrei funktionieren. Danke trotzdem für deine Unterst ...

Geschrieben von I_am_Paul am 31.12.2025 14:28:03
Forum: PHP Developer Forum