我有一个类,它有一些静态的,一些非静态的方法。它具有静态属性。我试图在它的所有方法中访问该属性,但我找不出正确的语法。
我有这个:
class myClass {
static public $mode = 'write';
static public function getMode() {
return myClass::$mode;
}
public function getThisMode() {
return $this->mode;
}
}
有人能告诉我这个的实际语法吗?
对于静态属性,即使在非静态函数中也要使用以下内容
return self::$mode;
这是因为无论对象是否实例化,静态属性都存在。因此,我们只是在使用相同的预先存在的属性。
如果您在类之外,请确保不要忘记$
,否则您也会看到此错误。例如,一定要这样称呼它:
$myClass = new myClass();
echo $myClass::$mode;
不是这样的:
echo $myClass::mode;