2009-06-17 17 views
11

Mögliche Duplizieren:
How are echo and print different in PHP?Gibt es einen Unterschied zwischen "Drucken" und "Echo" in PHP?

UPDATE:

ich zu meiner Erleichterung fand ein genaueduplicate (es war nicht zeigt, wenn ich diese Frage zuerst eingegeben haben, ich fand es mit ... google): Bitte stimme mit mir ab, diese Frage zu schließen, denn es ist ermüdend, jage diesen anderen armen Kerl ein bisschen ;-)


Gibt es einen Unterschied zwischen print und echo in PHP? Wenn ja, welche sollte ich wann verwenden? Wenn nicht, warum gibt es zwei Schlüsselwörter?

UPDATE:

An den downvoters: lesen Sie bitte die SO FAQ. SO wurde auch eingerichtet, um googlefähige Fragen zu erfassen. also solltest du das nicht ablehnen, diese Frage ist eine gültige Frage, die an vielen Orten und jetzt auch auf SO beantwortet wird.

Natürlich können Sie aus einem anderen Grund ablehnen, aber bitte hinterlassen Sie einen Kommentar in den Zeilen -1: downvoted für .., denn im Moment verstehe ich die downvotes nicht.

+7

"Googleable" als Tag bedeutet, dass Sie schrecklich, schrecklich faul sind, eine Frage zu stellen. Ich habe es entfernt, um dich vor dir selbst zu schützen. – Welbog

+2

@Welbog, das ist in Ordnung für mich, aber ich habe es mit einigen Reaons da. 1) mit SO anstelle von Google ist in Ordnung, es bedeutete hohe Punktzahl auf Google, so dass es Abdeckung vorhandener Antworten haben muss. Nicht jeder scheint das zu wissen, normalerweise, wenn ich eine googlefähige Frage stelle, werde ich abgewählt, sicherlich von Neulingen, da in anderen Foren googlefähige Fragen nicht gestellt werden, so wie es ist, mich selbst zu schützen 2. Durch Angabe googleable , ich hoffe auf schnelle Antworten von Leuten, die es googlen werden, also kann ich es wirklich anstelle von Google verwenden, indem ich noch helfe, die Wissensbasis hier zu erweitern – Peter

+4

Ich muss Peter zustimmen. Die Tatsache, dass etwas "googlefähig" ist, sollte nichts bedeuten. Die große Mehrheit der Fragen hier könnte als "googlefähig" betrachtet werden. – Sampson

Antwort

27

Von this link, von der PHP manual entry for the echo() function vorgeschlagen:

  1. Geschwindigkeit. Es gibt einen Unterschied zwischen den beiden, aber Geschwindigkeit sollte irrelevant sein, die Sie verwenden. echo ist marginal schneller seit es setzt keinen Rückgabewert, wenn Sie wirklich wollen, um die nitty gritty zu bekommen.

  2. Ausdruck. print() verhält sich wie eine Funktion: $ ret = print "Hello World"; Und $ ret wird sein

  3. Das bedeutet, dass Drucken als Teil eines komplexeren Ausdrucks wo Echo nicht verwendet werden kann. Ein Beispiel aus das PHP-Handbuch:

    $ b? print "true": print "false";

Druck ist auch Teil des Vorrangs Tabelle, die es braucht, wenn es ist innerhalb eines komplexen Ausdruck verwendet werden. Es ist nur etwa unter der unteren der Präzedenzliste. Nur "," UND, ODER und XOR sind niedriger.

  1. Parameter (n). Die Grammatik ist: Echo Ausdruck [, Ausdruck [, Ausdruck] ...] Aber Echo (Ausdruck, Ausdruck) ist nicht gültig.Dies wäre gültig: echo ("howdy"), ("Partner"); das gleiche wie: echo "howdy", "partner";
    (Setzt man die Klammern in diesem einfachen Beispiel hat keinen Zweck, da es kein Operator Vorrang Problem mit einem einzigen Begriff, wie das ist.)

So Echo, ohne Klammern können mehrere Parameter nehmen, die erhalten verkettet:

echo "und a", 1, 2, 3; // durch Komma getrennt ohne Klammern
Echo ("und a 123"); // nur ein Parameter mit Klammern

print() kann nur einen Parameter übernehmen:

print ("und 123"); print "und a 123";

2

Druck zurück, Echo nicht.

Und Sie haben Recht, völlig googleable.

Verwandte Themen