继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

PHP static 和 self 的区别

雨之赞歌
关注TA
已关注
手记 2
粉丝 7
获赞 3

self :: 在哪个类里调用的就调用哪个类中的方法,不受重写的影响。
static :: 调用的方法如果被子类重写,那调用的就是子类中的方法。

//父类
class father
{
    public static function name()
    {
        echo "xiaosan";
        echo "<br />";
    }
    
    public static function callself()
    {
        self::name();   //调用name方法
    }
    
    public static function callstatic()
    {
        static::name(); //静态绑定
    }
}

//继承类
class son extends father
{
    //重写name方法
    public static function name()
    {
        echo "gaojin";
        echo "<br />";
    }
}

son::callself();    // xiaosan
son::callstatic();  // gaojin
打开App,阅读手记
2人推荐
发表评论
随时随地看视频慕课网APP