php echo不需要括号

时间:2012-03-17 08:56:58

标签: php function echo

因为echo不是函数,所以在调用它时我们不使用括号。

示例:

echo "hello";

而不是

echo ("hello");  

如果它是一个函数,它将被强制称为echo ("hello");

在ASP / Vbscript中,我可以通过以下方式之一调用函数;

call dosomething("x","y","z")

dosomething "x","y","z"   notice the missing parathesis

我在PHP中看到的这种无括号语法最接近的是echo。我喜欢跳过括号的能力。

我的问题是,如果有一种方法可以在PHP中编写函数,那么不需要使用括号?

3 个答案:

答案 0 :(得分:7)

从PHP内部?

您需要修改Zend Engine中的C代码。这当然是不可取的,因为您需要使用自定义构建来运行代码。它也会让其他程序员不必要地混淆。您不应仅仅因为喜欢跳过令牌而尝试更改核心语言功能。

括号对于表示函数调用很重要。

echoinclude等内容称为语言构造。它们在语言中的实现方式类似于普通的一元运算符,如new++等。

另请注意,语言结构并未严格省略括号。以unset()为例。

答案 1 :(得分:2)

没有。 “Echo”不是php中的函数,而是一种语言结构,这就是为什么你可以在没有parens的情况下使用它。 “包含”或“要求”也是如此,您可以使用或不使用parens。

答案 2 :(得分:0)

echo()实际上并不是一个函数(它是一种语言结构),所以你不需要在它上面使用括号。

有关回声的更多信息,请访问:http://php.net/manual/en/function.echo.php