明天小编将带各人学习一下用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】几种形式完成类名猎取和完成单例模式的具体内容,更多请存眷资源魔其它相干文章!
标签: php php开发教程 php开发资料 php开发自学 单例模式 类名获取
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。
抱歉,评论功能暂时关闭!