旗下导航:搜·么
当前位置:网站首页 > PHP教程 > 正文

【PHP】几种体式格局完成类名猎取以及完成单例形式【php教程】

作者:搜搜PHP网发布时间:2019-11-26分类:PHP教程浏览:99


导读:本日小编将带人人进修一下用PHP完成类名猎取以及完成单例形式,具有肯定的参考价值,感兴趣的朋侪能够相识一下!猎取类名的几种体式格局1.__CLASS__:猎取当前的...

本日小编将带人人进修一下用PHP完成类名猎取以及完成单例形式,具有肯定的参考价值,感兴趣的朋侪能够相识一下!

猎取类名的几种体式格局

1.__CLASS__:猎取当前的类名

2.get_class():返回对象的类名

3.get_called_class():后期静态绑定("Late Static Binding")类的称号,即静态要领调用者的类名

<?php

class foo {
    static public function test() {
        echo "foo.__CLASS__:".__CLASS__."\n";
        echo "foo.get_class:".get_class()."\n";
        echo "foo.get_called_class:".get_called_class()."\n";
    }
}

class bar extends foo {
    
}

foo::test();
echo "\n";
bar::test();
?>

效果:

//效果
foo.__CLASS__:foo
foo.get_class:foo
foo.get_called_class:foo

foo.__CLASS__:foo
foo.get_class:foo
foo.get_called_class:bar

单例形式:确保一个类只要一个实例,而且自行实例化并向全部体系供应这个实例。

<?php

//经由过程get_called_class完成单例形式

class Singleton{
   
   private static $instance; 
  
    public static function getInstance() {  //静态共有要领实例化对象
        $class_name = get_called_class();
        if (isset(self::$instance[$class_name])) {
            return self::$instance[$class_name];
        }
        self::$instance[$class_name] = new $class_name;
        return self::$instance[$class_name];
    }
}
?>

相干教程:PHP视频教程

以上就是【PHP】几种体式格局完成类名猎取以及完成单例形式的细致内容,更多请关注ki4网别的相干文章!

标签:PHP单例模式类名获取