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

时间:2009-06-17 12:03:56

标签: php

  

可能重复:
  How are echo and print different in PHP?

更新:

我发现了一个完全 duplicate(当我首先输入这个问题时,它没有出现,我发现它与...谷歌): 请与我一起投票来关闭这个问题,因为它很累,去寻找其他可怜的家伙; - )


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

更新:

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

当然,你可以通过另一个原因进行投票,但请在评论栏中留言 -1:downvoted for ..,因为现在,我不理解downvotes。

4 个答案:

答案 0 :(得分:27)

来自this link建议的PHP manual entry for the echo() function

  
      
  1. 速度。两者之间存在差异,但速度快   应该与你无关   使用。回声比较快   如果你没有设置返回值   真的想要深入了解   坚韧不拔。

  2.   
  3. 表达。 print()的行为就像一个函数,你可以这样做:$ ret =   打印“Hello World”; $ ret将

  4.   
  5. 这意味着print可以用作更复杂表达式的一部分   回声不能。一个例子来自   PHP手册:

         

    $ b? print“true”:print“false”;

  6.         

    print也是优先权的一部分   如果它是必要的表   在复杂的内部使用   表达。它只是在   虽然优先列表的底部。   只有“,”AND,OR和XOR较低。

         
        
    1. 参数(一个或多个)。语法是:echo表达式[,表达式[,表达式]   ......]但回声(表达,   表达式)无效。这个会   有效:echo(“howdy”),(“伙伴”);   同样如:echo“howdy”,“partner”;
        (把括号放在那么简单   自那以后,例子没有任何意义   没有运算符优先级问题   像这样的单一术语。)
    2.         

      所以,没有括号的回声可以采取   得到的多个参数   级联:

           

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

           

      print()只能带一个参数:

           

      打印(“和123”);打印“和   一个123“;

答案 1 :(得分:4)

有人说回声比印刷稍快,因为它没有返回值。虽然这里有人不认为速度差异很重要...... http://fabien.potencier.org/article/8/print-vs-echo-which-one-is-faster

答案 2 :(得分:3)

答案 3 :(得分:2)

打印返回,echo不会。

你是对的,完全是谷歌。