类函数内的PHP全局变量


PHP global variable inside class function

为什么在类内部的函数中,我不能这样做:

global $connected = true;

但是我可以这样做:

global $connected;
$connected = true;

$connected纳入作用域和为其赋值是两件独立的事情。

没有理由让它们在一个语句中出现,这真的没有多大意义。


执行以下代码:

function foo() {
   global $x = 5;
}
  • 将"全局表达式"$x = 5纳入范围?
  • 将"全局表达式"5纳入范围?
  • 分配5给全局$x ?
  • 5分配给全局$x,然后将$x纳入范围?

我当然知道你的意思是后者,而前两个没有意义。但是,从拟议的声明中并不清楚这一点。

因为在函数内部,首先必须声明一个全局变量。这是在函数开始时必须做的事情。