PHP中static和self的区别-php教程

资源魔 29 0

应用 self:: 或许 __CLASS__对以后类的动态援用,取决于界说以后办法所正在的类:

应用 static:: 再也不被解析为界说以后办法所正在的类,而是正在实际运转时较量争论的。也能够称之为“动态绑定”,由于它能够用于(但没有限于)动态办法的挪用。

动态绑定是PHP 5.3.0,添加的一个性能 用于正在承继范畴内援用动态挪用的类

简略浅显的来讲,

self就是写正在哪一个类外面, 实际挪用的就是这个类.

static代表应用的这个类, 就是你正在父类里写的static,而后被子类笼罩,应用的就是子类的办法或属性

<?php
class 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: 111
Man::callstatic();  // output: 222
?>

保举:PHP视频教程

以上就是PHP中static以及self的区分的具体内容,更多请存眷资源魔其它相干文章!

标签: php php开发教程 php开发资料 php开发自学 Static self

抱歉,评论功能暂时关闭!