Jump to content
MakeWebGames

What is the difference between echo and print ?


mdshare

Recommended Posts

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.

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";

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 precedence list though. Only "," AND, OR and XOR are lower.

Parameter(s)

The grammar is: echo expression [, expression[, expression] ... ] But echo ( expression, expression ) is not valid.

This would be valid: echo ("howdy"),("partner"); the same as: echo "howdy","partner"; (Putting the brackets in that simple example

serves no purpose since there is no operator precedence issue with a single term like that.)

So, echo without parentheses can take multiple parameters, which get concatenated:

echo "and a ", 1, 2, 3; // comma-separated without parentheses

echo ("and a 123"); // just one parameter with parentheses

print() can only take one parameter:

print ("and a 123");

print "and a 123";

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...