84669 personnes étudient
152542 personnes étudient
20005 personnes étudient
5487 personnes étudient
7821 personnes étudient
359900 personnes étudient
3350 personnes étudient
180660 personnes étudient
48569 personnes étudient
18603 personnes étudient
40936 personnes étudient
1549 personnes étudient
1183 personnes étudient
32909 personnes étudient
PHP中如果在static function 中调用其他非static 的方法呢?
比如下面我有一个静态方法 a, 和一个非静态的方法 b, 我如果在a 中引用方法b呢?
class aaa{ static function a(){} private function b(){} }
谢谢
ringa_lee
self::b();
self
谢谢 我也知道用self, 就是那个被引用的方法也要是static 才行是吗
class aaa{ private $var; static function a(){} private function b(){ $this->var = 1; } }
@LeonTheKing @Oooooooo @ztalloc 这种情况如果通过aaa::a();调用a方法,在a方法中不实例化aaa类不能调用b方法的啊
访问方法有两种 $this 和 self
$this是伪对象,而访问静态方法不需要实例化对象,所以不存在伪对象,此法排除。self指的是类本身,self::A(); 可以使用。
self
谢谢 我也知道用self, 就是那个被引用的方法也要是static 才行是吗
@LeonTheKing @Oooooooo @ztalloc 这种情况如果通过aaa::a();调用a方法,在a方法中不实例化aaa类不能调用b方法的啊
访问方法有两种 $this 和 self
$this是伪对象,而访问静态方法不需要实例化对象,所以不存在伪对象,此法排除。
self指的是类本身,self::A(); 可以使用。