【问题标题】:Why do the"print" and "echo" functions not need brackets around them为什么“print”和“echo”函数不需要括号
【发布时间】:2012-08-03 08:05:54
【问题描述】:

只是想知道。

谢谢。

我只是把它放在这里,这样我就可以达到 30 个字符,忽略这一点 :)

【问题讨论】:

  • 它们不是函数,它们是语言结构,这就是你的答案。不幸的是,由于多年来的各种设计愚蠢,并非所有语言结构都不需要括号。可以在here 找到有关该主题的一些很好的进一步阅读

标签: php function printing echo brackets


【解决方案1】:

因为它们是 PHP 结构(也称为构造)而不是函数

【讨论】:

    【解决方案2】:

    echo 实际上不是一个函数,它是一种语言结构,所以你不需要使用括号。 echo 与其他一些语言结构不同,它的行为不像函数,因此它不能总是在函数的上下文中使用。

    因为echo的行为不像函数,所以下面的代码是无效的。

    ($some_var) ? echo 'true' : echo 'false';
    

    但是,以下示例将起作用:

    ($some_var) ? print 'true' : print 'false'; 
    

    print 也是一个构造,但它的行为类似于一个函数,因此可以在这种情况下使用它。

    【讨论】:

      猜你喜欢
      • 2012-04-02
      • 2017-11-07
      • 2014-08-09
      • 2013-10-05
      • 1970-01-01
      • 2017-01-10
      • 1970-01-01
      • 2019-10-27
      • 1970-01-01
      相关资源
      最近更新 更多