lit*_*leK 3 php syntax scope object-properties
是否可以将对象传递给PHP类的构造函数,并将该对象设置为可由类中其余函数使用的全局变量?
例如:
class test {
function __construct($arg1, $arg2, $arg3) {
global $DB, $ode, $sel;
$DB = arg1;
$ode = arg2;
$sel = $arg3;
}
function query(){
$DB->query(...);
}
}
Run Code Online (Sandbox Code Playgroud)
当我尝试这样做时,我得到一个"对非对象的成员函数调用"错误.反正有没有这样做?否则,我必须直接将对象传递给每个单独的函数.
谢谢!
您可能希望将它们分配给值$this.
在你的构造函数中,你会做:
$this->DB = $arg1;
Run Code Online (Sandbox Code Playgroud)
然后在你的查询函数中:
$this->DB->query(...);
Run Code Online (Sandbox Code Playgroud)
这应该与构造函数的其他参数类似地完成.
$this在实例上下文中是您如何引用当前实例.还有关键字parent::和self::分别访问类的超类和静态成员的成员.