PHP中的单例模式
确保一个类只有一个实例,不能重复实例,只能它自己实例,向整个系统提供这个实例。
三私:私有化静态属性、构造方法、克隆方法
<?php class Danli { //保存类实例的私有静态成员变量 private static $_instance; //定义一个私有的构造函数,确保单例类不能通过new关键字实例化,只能被其自身实例化 private final function __construct() { echo 'test __construct'; } private function __clone() { // TODO: Implement __clone() method. } public static function getInstance() { //检测类是否被实例化 if (!(self::$_instance instanceof self)) { self::$_instance = new Danli(); } return self::$_instance; } }
代码中用到的关键词:
1、final:PHP5新增了一个final关键词。如果一个类被声明为final,则不能被继承;如果父类中的一个方法被声明为final,则子类无法覆盖该方法。

浙公网安备 33010602011771号