随笔-2  评论-0  文章-0  trackbacks-0
刚接触 PHP ,其中有两个打印(输出函数),即 echo() 和 print(),咋看起来很像。于是乎,在网上查询了一下,以下是来自官方的 Q&A:

What is the difference between echo and print?


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"; 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. 3. 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";
posted on 2009-02-23 16:26 Tiger 阅读(292) 评论(0)  编辑 收藏 引用
只有注册用户登录后才能发表评论。