How to invoke a method statically?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | <?php class Popular { public static function getVideo() { return $this->parsing(); } } class Video extends Popular { public static function parsing() { return 'trololo'; } public static function block() { return parent::getVideo(); } } echo Video::block(); |
我绝对应该这样称呼这个班级:
1 | Video::block(); |
不初始化它
1 2 | $video = new Video(); echo $video->block() |
不是这个!
1 | Video::block(); // Only this way << |
但是:致命错误:在第6行myfile.php的对象上下文中不使用$this
如何从"热门"类中调用函数"解析"?
糟糕的英语很好用
使用静态方法时,不能使用
当您使用一个类中的创建和对象的
如果代码是静态的,那么您必须使用
例子:
1 2 3 4 5 6 7 | class Popular { public static function getVideo() { return static::parsing(); //Here } } |
- 在PHP中,$这意味着什么?
- Paamayim Nekudotayim-范围分辨率
- http://php.net/manual/en/language.oop5.static.php
将