This article hat diese Frage zu einer größeren Tiefe erforscht, als Sie vielleicht sogar gewusst haben, war möglich.
Von: http://www.faqts.com/knowledge_base/view.phtml/aid/1/fid/40
1.
Speed. There is a difference between the two, but speed-wise it should be irrelevant which one you use. echo is marginally faster since it doesn't set a return value if you really want to get down to the nitty gritty.
2.
Expression. print() behaves like a function in that you can do: $ret = print "Hello World"; And $ret will be 1. That means that print can be used as part of a more complex expression where echo cannot. An example from the PHP Manual:
$b ? print "true" : print "false";
Druck ist auch Teil der Präzedenztabelle, die es braucht, wenn es innerhalb einer verwendet werden soll komplexer Ausdruck. Es ist jedoch nur etwa am Ende der Rangfolge-Liste. Nur "," UND, ODER und XOR sind niedriger.
- Parameter (s). Die Grammatik ist: echo expression [, Ausdruck [, Ausdruck] ...] Aber Echo (Ausdruck, Ausdruck) ist nicht gültig. Dies wäre gültig: echo ("howdy"), ("Partner"); das gleiche wie: echo "grüß dich", "partner"; (Die Klammern in diesem einfachen Beispiel zu verwenden, hat keinen Sinn, da es für einen einzelnen Begriff wie diesen keine Vorrangstellung gibt.
)
So, Echo ohne Klammern können mehrere Parameter übernehmen, die verketteten erhalten:
echo "and a ", 1, 2, 3; // comma-separated without parentheses
echo ("and a 123"); // just one parameter with parentheses
print() kann nur ein Parameter übernehmen:
print ("and a 123");
print "and a 123";
Weil 'echo' tun gibt keinen Wert – Mchl