php单例模式
单例模式,是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例的特殊类。通过单例模式可以保证系统中一个类只有一个实例。即一个类只有一个对象实例。
要点主要有三个:
1.一个类只能有一个对象;
2.必须是自行创建这个类的对象;
3.要想整个系统提供这一个对象;
从具体实现角度来说,就是以下三点:
一是单例模式的类只提供私有的构造函数,
二是类定义中含有一个该类的静态私有对象,
三是该类提供了一个静态的公有的函数用于创建或获取它本身的静态私有对象。
当然还要有一个private的clone方法,防止克隆;
<?php //单例模式 class Uni{ //创建静态私有的变量保存该类对象 private static $instance; //参数 private $config;
//防止直接创建对象 private function __construct($config){ $this -> config = $config; } //防止克隆对象 private function __clone(){ }
public static function getInstance($config){ self::$instance = new self($config); return self::$instance; } } ?>