PHP中static和self的区别
导读:收集整理的这篇文章主要介绍了PHP中static和self的区别,觉得挺不错的,现在分享给大家,也给大家做个参考。使用 self:: 或者 __CLASS__对当前类的静态引用,取决于定义当前方法所在的类:使用 static:: 不再被解析...
收集整理的这篇文章主要介绍了PHP中static和self的区别,觉得挺不错的,现在分享给大家,也给大家做个参考。使用 self:: 或者 __CLASS__对当前类的静态引用,取决于定义当前方法所在的类:
使用 static:: 不再被解析为定义当前方法所在的类,而是在实际运行时计算的。也可以称之为“静态绑定”,因为它可以用于(但不限于)静态方法的调用。
静态绑定是PHP 5.3.0,增加的一个功能 用于在继承范围内引用静态调用的类
简单通俗的来说,
self就是写在哪个类里面, 实际调用的就是这个类.
static代表使用的这个类, 就是你在父类里写的static,然后被子类覆盖,使用的就是子类的方法或属性
?phpclass PErson{ public static function name() { echo "111"; echo "br /> "; } public static function callself() { self::name(); } public static function callstatic() { static::name(); } } class Man extends Person{ public static function name() { echo "222"; echo "br /> "; } } Man::callself(); // output: 111Man::callstatic(); // output: 222?>
推荐:PHP视频教程
以上就是PHP中static和self的区别的详细内容,更多请关注其它相关文章!
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: PHP中static和self的区别
本文地址: https://pptw.com/jishu/596108.html