0 php
可能重复:
从类中访问全局变量
我得到以下代码:
$foo = 'foo';
class bar
{
public function __construct()
{
var_dump($foo);
}
}
$bar = new bar();
Run Code Online (Sandbox Code Playgroud)
这将导致NULL值。是否可以在类栏中达到$ foo?用一些花哨的魔术词在PHP?
是的,魔术词称为自变量
class bar
{
public function __construct($foo)
{
var_dump($foo);
}
}
$foo = 'foo';
$bar = new bar($foo);
Run Code Online (Sandbox Code Playgroud)
您不希望global在代码中使用关键字。功能(和方法)应该是可测试的隔离单元。如果使用global关键字,则实际上是在函数作用域内对全局作用域的依赖关系。通过参数注入依赖关系更好,更可维护。