[INFO] What's the difference between echo and print...

PHP programming forum. Ask questions or help people concerning PHP code. Don't understand a function? Need help implementing a class? Don't understand a class? Here is where to ask. Remember to do your homework!

Moderator: General Moderators

Post Reply
User avatar
JayBird
Admin
Posts: 4524
Joined: Wed Aug 13, 2003 7:02 am
Location: York, UK
Contact:

[INFO] What's the difference between echo and print...

Post by JayBird »

I was just searching for the answer to this question, i found it, so i thought i would share it with everyone becuase it is probably a common question.

Which is faster, echo or print?

There is a difference between the two, but speed-wise it
should be irrelevant which one you use. print() behaves
like a function in that you can do:

Code: Select all

$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. print is also part of the
precedence table which it needs to be if it is to be used
within a complex expression. It is just about at the bottom
of the precendence list though. Only "," AND, OR and XOR
are lower.

echo is marginally faster since it doesn't set a return
value if you really want to get down to the nitty gritty.

If the grammar is:

Code: Select all

echo expression [, expression[, expression] ... ]
Then

Code: Select all

echo ( expression, expression )
is not valid. ( expression ) reduces to just an expression
so this would be valid:

Code: Select all

echo ("howdy"),("partner");
but you would simply write this as:

Code: Select all

echo "howdy","partner";
if you wanted to use two expression. Putting the brackets
in there serves no purpose since there is no operator
precendence issue with a single expression like that.
Post Reply