PHP中的'print'和'echo'有什么区别吗?

Pet*_*ter 11 php

可能重复:
PHP中的echo和print有何不同?

更新:

我找到了一个完全 重复的东西(当我最初输入这个问题时没有出现,我发现它与...谷歌):请投票支持我关闭这个问题,因为它很累,去追捕其他可怜的家伙;-)


PHP printechoPHP 之间有什么区别吗?如果是这样,我应该使用哪些以及何时使用?如果没有,为什么有两个关键字?

更新:

在downvoters:请阅读SO faq.设置也是为了捕捉谷歌问题.因此,你不应该为此投票,这个问题是一个有效的问题,在很多地方都有答案,现在也是如此.

当然,你可以用另一个原因进行投票,但请在-1的行中留下评论:为...投票,因为现在,我不理解downvotes.

kar*_*m79 27

从此链接,PHP手册的echo()功能建议:

  1. 速度.两者之间存在差异,但在速度方面,它应与您使用的哪一个无关.如果你真的想要深入了解细节,那么回声会稍快一些,因为它没有设置返回值.

  2. 表达.print()的行为类似于一个函数,你可以这样做:$ ret = print"Hello World"; $ ret将是

  3. 这意味着print可以用作echo不能表达的更复杂表达式的一部分.PHP手册中的一个例子:

    $ b?print"true":print"false";

如果要在复杂表达式中使用print,它也是优先级表的一部分.它只是在优先列表的底部.只有","AND,OR和XOR较低.

  1. 参数(S).语法是:echo表达式[,表达式[,表达式] ...]但是echo(表达式,表达式)无效.这将是有效的:echo("howdy"),("伙伴"); 同样如:echo"howdy","partner";
    (将括号放在这个简单的例子中是没有用的,因为没有像这样的单个术语的运算符优先级问题.)

因此,没有括号的echo可以采用多个参数,这些参数会被连接起来:

echo"和a",1,2,3; //逗号分隔,没有括号
echo("和123"); //只有一个带括号的参数

print()只能带一个参数:

打印("和123"); 打印"和123";