PHP 返回(值);vs 返回值;

2022-08-30 19:47:49

和其他 然后将其括在括号中有什么区别吗?return($var);return $var;


答案 1

除非您通过引用返回,否则它们的含义相同。最好排除括号。从文档中

注意:请注意,由于是语言构造而不是函数,因此不需要其参数周围的括号。通常将它们排除在外,您实际上应该这样做,因为在这种情况下PHP要做的工作量较少。return()

注意:通过引用返回时,切勿在返回变量周围使用括号,因为这不起作用。只能通过引用返回变量,而不能返回语句的结果。如果您使用 ;那么你返回的不是变量,而是表达式的结果(当然,这是 的值)。return ($a)($a)$a


答案 2

来自 PHP 手册

“通过引用返回时,您永远不应该在返回变量周围使用括号,因为这不起作用。只能通过引用返回变量,而不能返回语句的结果。如果您使用回车表 ($a);那么你返回的不是变量,而是表达式的结果($a)(当然,这是$a的值)。

编辑:这意味着 和 之间存在差异。具体来说,前者将返回 的值,后者将返回自身。return($var)return $var$var$var


推荐