[INFO] What's the difference between echo and print...
Posted: Thu Sep 11, 2003 4:15 am
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:
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:
Then
is not valid. ( expression ) reduces to just an expression
so this would be valid:
but you would simply write this as:
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.
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";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] ... ]Code: Select all
echo ( expression, expression )so this would be valid:
Code: Select all
echo ("howdy"),("partner");Code: Select all
echo "howdy","partner";in there serves no purpose since there is no operator
precendence issue with a single expression like that.