鉴于以下代码,我正在寻找专业人士和调用$ this-> myStaticFunc(); vs self :: myStaticFunc();
class MyClass
private function myPrivateFunc() {
...
$this->myStaticFunc(); // or self::myStaticFunc();
...
}
// no need to tell me that i can't use $this in here
public static function myStaticFunc() { ... }
}
// access static function
MyClass::myStaticFunc();
答案 0 :(得分:3)
使用$this->myStaticFunction()
的缺点是:
->
表示您正在对某个对象做某事,但您不是),self
)调用它们,而不是对象。唯一可能的专业是你可能想要覆盖子类中的静态函数,但这表明该函数属于对象而不是类。在这种情况下,使用实例方法会更合适。