In PHP, why is echo
faster than print
They do the same thing... Why is one faster than the other?
Do they do exactly the same thing???
Print has a return value, this is the only difference.
The speed difference (if any) is so miniscule that it's not worth the effort thinking about micro optimisations like this, and it's absolutely not worth updating any old code to switch prints to echos. There are much better ways to speed up your site, if this is your goal.
The differences are broken down here: PHP Performance: Echo & Print
echo
and print
are virtually (not technically) the same thing. The (pretty much only) difference between the two is that print
will return the integer 1
, whereas echo
returns nothing. Keep in mind that neither is actually a function, but rather language constructs. echo
allows you to pass multiple strings when using it as if it were a function (e.g., echo($var1, $var2, $var3)
).
echo
can also be shorthanded by using the syntax <?= $var1; ?>
(in place of <?php echo $var1; ?>
).
As far as which is faster, there are many online resources that attempt to answer that question. PHP Benchmark concludes that "[i]n reality the echo and print functions serve the exact purpose and therefore in the backend the exact same code applies. The one small thing to notice is that when using a comma to separate items whilst using the echo function, items run slightly faster."
It will really come down to your preference, since the differences in speed (whatever they actually are) are negligible.