1、单例模式介绍
单例模式又称为职责模式,它用来在程序中创建一个单一功能的访问点,通俗地说就是实例化出来的对象是唯一的。
所有的单例模式至少拥有以下三种公共元素:
- 它们必须拥有一个构造函数,并且必须被标记为private
- 它们拥有一个保存类的实例的静态成员变量
- 它们拥有一个访问这个实例的公共的静态方法
单例类不能再其它类中直接实例化,只能被其自身实例化。它不会创建实例副本,而是会向单例类内部存储的实例返回一个引用。
2、单例模式示例
数据库链接单例模式示例
<?php
class DB {
private static $db;
private function __construct(){
}
private function __clone(){
}
public static function getInstance(){
if(!(self::$db instanceof DB)){
self::$db = new DB;
}
return self::$db;
}
}