Confused with $this and self in PHP
本问题已经有最佳答案,请猛点这里访问。
$this和php中的self有什么不同?
当我在php.net上阅读静态关键字时,我对下面的句子感到困惑。
$this is not available inside the method declared as static.
为什么$this在执行此操作时不可用?
任何帮助都将不胜感激!
谢谢!
用于呼叫非静态变量和方法。
用于呼叫静态变量和方法。
什么时候用这个?
这方面的另一个功能方面是,还有一个
1 2 3 4 5 6 7 8 9 10 | class A { public static function createNew(){ return new self(); } } class B extends A { } $test = B::createNew(); // This will actually yield an instance of A |
但如果一个班被定义为
ZZU1
如你所期望的那样,您会得到一个B机构。
这也与静态性能有关,因为在玩
如果遗传和静态特性/方法是重要的,要知道差异,我的经验在这些案例中总是错误的,并且它可以引导一些有趣的错误,只有当更多的层次上的一个成员在某个时候出现时,才显现出来。
应用于非静态存取类别的成员功能和特性
惠尔
用於存取一类静态成员和静态功能。
一个需要记住的方面是,静态成员只能通过静态方法而不是通过类别的其他成员功能(非静态)获得。