dl_*_*l__ 279
来自:http://web.archive.org/web/20090221144611/http : //faqts.com/knowledge_base/view.phtml/aid/1/fid/40
速度.两者之间存在差异,但在速度方面,它应与您使用的哪一个无关.如果你真的想要深入了解细节,那么回声会稍快一些,因为它没有设置返回值.
表达.print()
表现得像一个功能,你可以这样做:
$ret = print "Hello World"
; 而且$ret
会1
.这意味着print可以用作echo不能表达的更复杂表达式的一部分.PHP手册中的一个例子:
$b ? print "true" : print "false";
Run Code Online (Sandbox Code Playgroud)
如果要在复杂表达式中使用print,它也是优先级表的一部分.它只是在优先列表的底部.只有","AND,OR和XOR较低.
,
但AND
无效.这是有效的:OR
; 同样的:XOR
; (将括号放在这个简单的例子中是没有用的,因为没有像这样的单个术语的运算符优先级问题.)因此,没有括号的echo可以采用多个参数,这些参数会被连接起来:
echo "and a ", 1, 2, 3; // comma-separated without parentheses
echo ("and a 123"); // just one parameter with parentheses
Run Code Online (Sandbox Code Playgroud)
echo expression [, expression[,
expression] ... ]
只能带一个参数:
print ("and a 123");
print "and a 123";
Run Code Online (Sandbox Code Playgroud)
小智 9
要添加上面的答案,虽然print只能接受一个参数,但它允许连接多个值,即:
$count = 5;
print "This is " . $count . " values in " . $count/5 . " parameter";
Run Code Online (Sandbox Code Playgroud)
这是1个参数中的5个值
我认为print()
比慢echo
.
我喜欢print()
只用于以下情况:
echo 'Doing some stuff... ';
foo() and print("ok.\n") or print("error: " . getError() . ".\n");
Run Code Online (Sandbox Code Playgroud)
正如PHP.net手册所示,请阅读本讨论.
一个主要区别是echo
可以输出多个参数.例如:
echo 'foo', 'bar'; // Concatenates the 2 strings
print('foo', 'bar'); // Fatal error
Run Code Online (Sandbox Code Playgroud)
如果您要评估输出语句的结果(如下所示),请使用print
.如果没有,请使用echo
.
$res = print('test');
var_dump($res); //bool(true)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
185364 次 |
最近记录: |