PHP中static和self有哪些区别?-创新互联

这篇文章主要为大家详细介绍了PHP中static和self有哪些区别,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。

创新互联建站服务项目包括舒城网站建设、舒城网站制作、舒城网页制作以及舒城网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,舒城网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到舒城省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!

PHP中static和self有哪些区别?

使用 self:: 或者 __CLASS__对当前类的静态引用,取决于定义当前方法所在的类:

使用 static:: 不再被解析为定义当前方法所在的类,而是在实际运行时计算的。也可以称之为“静态绑定”,因为它可以用于(但不限于)静态方法的调用。

静态绑定是PHP 5.3.0,增加的一个功能 用于在继承范围内引用静态调用的类

简单通俗的来说,

self就是写在哪个类里面, 实际调用的就是这个类.

static代表使用的这个类, 就是你在父类里写的static,然后被子类覆盖,使用的就是子类的方法或属性

";
    }
    public static function callself()
    {
        self::name();
    }

    public static function callstatic()
    {
        static::name();
    }
}

class Man extends Person
{
    public static function name()
    {
        echo "222";
        echo "
"; } } Man::callself(); // output: 111 Man::callstatic(); // output: 222 ?>

关于PHP中static和self有哪些区别就分享到这里了,当然并不止以上和大家分析的办法,不过小编可以保证其准确性是绝对没问题的。希望以上内容可以对大家有一定的参考价值,可以学以致用。如果喜欢本篇文章,不妨把它分享出去让更多的人看到。


名称栏目:PHP中static和self有哪些区别?-创新互联
本文地址:http://myzitong.com/article/ceeghd.html