php oop开发中, static::$var 的用法

static::$var 会强制使用当前调用对象所属类中的变量 $var 的值。表现条件:类的继承。

案例一:

class a{
   static protected $test="class a";
   public function static_test(){
     echo static::$test; //class b
     echo self::$test;   //class a
   }
}
class b extends a{
   static protected $test="class b";
}
 
$obj = new b();
$obj->static_test();

案例二:

class par{
    const v='A';
    public function f1()
    {
        echo static::v;//静态绑定static::
    }
    public function f2()
    {
        echo self::v;
    }
}
class child extends par{
    const v='B';
}
$b=new child();
$b->f1();  //result: 'B'
echo '<br>';
$b->f2();  //result: 'A'

 


关注公众号,了解更多it技术(it问答网

发表评论

电子邮件地址不会被公开。