# 4.4.1 Ausgabe von Text

`echo` ist der meistgenutzte Ausgabebefehl in PHP. Auch `print` (analog zu `echo`) und `printf` (formatierte Ausgabe) sind möglich.

Hinweis

Die Ausgabe von Text ist eine ganz zentrale Funktionalität in PHP-Anwendungen. Der Browser kann PHP nicht interpretieren, sondern es wird HTML zum Browser geschickt und diese HTML-Elemente werden im PHP-Script durch entsprechende Textausgaben erstellt. PHP-Programme erstellen also über `echo`-Befehle das HTML-Dokument.

## Unterschiedliche Anführungszeichen

Der `echo`-Befehl kann mit einfachen Anführungszeichen und doppelten Anführungszeichen verwendet werden.

Beispiel

    1
    2
    3
    4
    5
    <?php
    $variable = "Test";
    echo "Gib die Variable $variable aus";  //Ausgabe: Gib die Variable Test aus

    echo 'Gib das Wort $variable aus';      //Ausgabe: Gib das Wort $variable aus

Fehlerhafte `echo`-Befehle kommen sehr häufig vor. Daher ist es wichtig, dass Sie einen Editor benutzen, der Sie visuell unterstützt. Bei alle guten Editoren können Sie anhand der Farben sehr einfach erkennen, ob im `echo`-Befehl `$variable` als Variable oder als Wort verwendet wird.

Häufig wird auch die folgende Variante benutzt, da sie das Erkennen von Variablen erleichtert und es ermöglicht, dass man Variablen ohne Leerzeichen hintereinander schreiben kann:

    echo "Gib zweimal die Variable {$variable}{$variable} aus";

## Teilabschnitte im `echo`-Befehl

Durch die Möglichkeit, entweder einfache Anführungszeichen oder doppelte Anführungszeichen zu verwenden, sowie durch die Möglichkeit, zur Verbindung von Teilstrings einen Punkt oder ein Komma zu verwenden, ergeben sich viele mögliche Varianten. Nachfolgend ein paar Beispiele, wie Sie echo verwenden können.

    1
    2
    3
    4
    5
    6
    7
    <?php
    $velocity = 3;
    echo "Mein Ergebnis lautet: ", $velocity, " km/h";
    echo "Mein Ergebnis lautet: " . $velocity . " km/h";
    echo "Mein Ergebnis lautet: $velocity km/h";
    echo 'Mein Ergebnis lautet: ', $velocity, ' km/h';
    echo 'Mein Ergebnis lautet: ' . $velocity . ' km/h';

Schauen Sie sich die Möglichkeiten sehr genau an! Alle Zeilen geben den identischen String aus: Mein Ergebnis lautet: 3 km/h.

Auch eine Verschachtelung ist möglich. Diese wird beispielsweise genutzt, wenn Sie HTML-Code mit PHP ausgeben möchten:

    1
    2
    3
    <?php
    echo '<input type="text" name="', $name, '">';
    echo "<input type=\"text\" name=\"$name\">";

Übung

Finden Sie den Fehler! Die folgende Zeile PHP-Code ist fehlerhaft:

    echo '<img alt="Picture" src=" . $path . " title="Title">';

Lösung

Beim `src`-Attribut fehlen einfache Anführungszeichen, ansonsten wird der Variablenname, nicht der Variableninhalt ausgegeben. Richtig muss es wie folgt sein:

    echo '<img alt="Picture" src="' . $path . '" title="Title">';

## Zahlen formatiert ausgeben mit printf()

Mithilfe dieser Funktion kann über einen Formatierungs-String eine Zeichenkette gebildet und ausgegeben werden. Somit lässt sich z.B. eine Uhrzeit mit Nullen auffüllen:

    <?php
    printf("%02d:%02d:%02d", $hour, $minute, $second);

Ausgabe:
09:08:24

Dabei leitet das Prozent-Zeichen jeweils eine neue Formatierungs-Anweisung ein. Die Null deklariert in diesem Fall ein Füllzeichen. Das heißt der String soll mit Nullen gefüllt werden und zwar bis auf zwei Zeichen lang. Das kleine „d“ besagt, dass es sich bei dem angegeben Wert um einen vorzeichenbehafteten Dezimalwert handelt. Die Doppelpunkte werden nicht interpretiert und unbehandelt ausgegeben.

Mehr Möglichkeiten zur Formatierung finden Sie auf der PHP-Seite: printf().