今天小编给大家分享的是php单例模式的详细介绍,相信大部分人都不太了解,为了让大家更加了解php单例模式,所以给大家总结了以下内容,话不多说,一起往下看吧。
php单例模式是什么意思
一个类有且仅有一个实例,并且自行实例化后提供给整个程序使用,或者可以理解为在整个程序运行期间,保证这个类有且仅一个实例,并对外提供一个能够访问它的全局访问点。
php单例模式示例
class Singleton { private static $_instance;//保存实例化出来的单例 //构造函数私有化,确保单例类不能通过其它对象 new 出来 private final function __construct() {} //定义私有的__clone()方法,这是确保单例类不能被复制或克隆,否则又不是单例了。 private function __clone() {} public static function getInstance() { //检测类是否被实例化,如果没有实例化,就 new 一下,已经实例化就直接返回。 if ( ! (self::$_instance instanceof self) ) { self::$_instance = new test(); } return self::$_instance; } } //拿到单例实例,多次调用都是同一个实例 Singleton::getInstance();
优点
1、提供了对唯一实例达到受控访问。
2、由于在系统内存中只存在一个对象,因此可以节约系统资源,对于一些需要频繁创建和销毁的对象单例模式无疑可以提高系统的性能。
缺点
1、单例模式破坏了常见的类模式以及没有抽象层,因扩展时有很大的困难。
2、单例模式为了能够保持运行期间唯一并能够被全局访问,污染了全局变量。
关于php单例模式的简单介绍就分享到这里了,希望以上内容可以对大家有一定的参考价值,可以学以致用。如果喜欢本篇文章,不妨把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。