(PHP 4, PHP 5, PHP 7, PHP 8)
print — Ausgabe eines Strings
Beschreibung
$expression
): int
Gibt expression
aus.
print
ist keine Funktion, sondern ein Sprachkonstrukt.
Sein Argument ist der Ausdruck, der auf das Schlüsselwort
print
folgt, und wird nicht durch Klammern abgegrenzt.
Der Hauptunterschied zu echo
besteht darin, dass
print
nur ein einziges Argument entgegennimmt, und
immer 1
zurückgibt.
Parameter-Liste
-
expression
-
Der Ausdruck, der ausgegeben werden soll. Nicht-String-Werte werden in Strings umgewandelt, auch wenn die Direktive
strict_types
aktiviert ist.
Rückgabewerte
Gibt immer 1
zurück.
Beispiele
Beispiel #1 print
-Beispiele
<?php
print "print benötigt keine Klammern.";
// Es wird kein Zeilenumbruch oder Leerzeichen eingefügt; das Folgende gibt
// "HalloWelt" in einer Zeile aus
print "Hallo";
print "Welt";
print "Dieser String umfasst
mehrere Zeilen. Die Zeilenumbrüche
werden mit ausgegeben.";
print "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";
print "foo ist $foo"; // foo ist ein Beispiel
$fruechte = ["Zitrone", "Orange", "Banane"];
print implode(" und ", $fruechte); // Zitrone und Orange und Banane
// Nicht-String-Ausdrücke werden in String umgewandelt, auch wenn
// declare(strict_types=1) verwendet wird
print 6 * 7; // 42
// Da print einen Rückgabewert hat, kann es in Ausdrücken verwendet werden
// Das Folgende gibt "Hallo Welt" aus
if ( print "Hallo" ) {
echo " Welt";
}
// Das Folgende gibt "wahr" aus
( 1 === 1 ) ? print 'wahr' : print 'falsch';
?>
Anmerkungen
Hinweis: Die Verwendung mit Klammern
Wenn das Argument in Klammern an
<?php
print "Hallo";
// gibt "Hallo" aus
print("Hallo");
// gibt auch "Hallo" aus, weil ("Hallo") ein gültiger Ausdruck ist
print(1 + 2) * 3;
// gibt "9" aus; die Klammern bewirken, dass zuerst 1+2 ausgewertet wird, dann 3*3
// Die print-Anweisung sieht den gesamten Ausdruck als ein Argument
if ( print("Hallo") && false ) {
print " - inside if";
}
else {
print " - inside else";
}
// gibt " - inside if" aus
// Der Ausdruck ("Hallo") && false wird zuerst ausgewertet und ergibt false
// Dies wird in die leere Zeichenkette "" umgewandelt und gedruckt
// Das print-Konstrukt gibt dann 1 zurück, also wird der Code im if-Block ausgeführt
?>Wenn
<?php
if ( (print "Hallo") && false ) {
print " - inside if";
}
else {
print " - inside else";
}
// gibt "Hallo - inside else" aus
// Im Gegensatz zum vorherigen Beispiel wird der Ausdruck (print "Hallo")
// zuerst ausgewertet
// Nach der Ausgabe von "Hallo" gibt print 1 zurück
// Da 1 && false falsch ist, wird der Code im else-Block ausgeführt
print "Hallo " && print "Welt";
// gibt "Welt1" aus; print "Welt" wird zuerst ausgewertet,
// dann wird der Ausdruck "Hallo " && 1 an den linken print übergeben
(print "Hallo ") && (print "Welt");
// gibt "Hallo Welt" aus; die Klammern erzwingen, dass die print-Ausdrücke
// vor dem && ausgewertet werden.
?>
Hinweis: Da dies ein Sprachkonstrukt und keine Funktion ist, können Sie dieses nicht mit Variablenfunktionen oder benannten Parametern verwenden.
Siehe auch
- echo - Gibt einen oder mehrere Strings aus
- printf() - Liefert einen formatierten String
- flush() - Leert (sendet) den System-Ausgabepuffer
- Möglichkeiten literale Strings anzugeben