PHP设计模式——单例模式
解决整个项目中创建唯一对象的实例,一旦创建就会一直存在于内存中。单例模式使用最多的场景,是数据库连接操作。我们知道,生成一个对象的操作是用new函数来实现,但是new对象都会消耗内存,而且有时候对同一个对象,在不同文件中可能会生成多次,这就造成了系统资源的浪费。然而使用单例模式,则可以很好的避免这种情况。
三私一公
- 私有化静态属性
- 私有化构造方法
- 私有化克隆方法
- 公有化静态方法
class Single{
/**
* 定义一个静态私有的属性存储实例化对象
*/
private static $instance;
/**
* Single constructor. 构造方法 private,防止外部 new创建此类实例
*/
private function __construct(){}
/**
* 定义一个私有 克隆方法,防止被克隆
*/
private function __clone(){}
/**
* 定义一个静态 public方法,这是获取本类实例的唯一全局访问点
*/
public static function getInstance()
{
if(empty(