static function getinstance($class, $param = array()){ if (!isset($obj[$class])) { $obj[$class] = new $class($param); } return $obj[$class];}在实例化一个类时,先判断是否有这个类的实例,如果有就不实例化,反之就实例化一个
厉害 楼主无敌talk is cheap,show you my code.
最简单的php单例模式的类:
class testinstance{ public static $_instance = null; //为了防止外部new这个类,所以构造方法用protected,这是单例模式的关键之处 protected function __construct() { echo 'instance,instance,instance..........'; } //用一个静态变量存储类的实例,只有第一次实例化的时候才赋值,以后都直接给出静态实例 public static function getinstance() { if(!isset(self::$_instance)){ self::$_instance = new static(); } return self::$_instance; }}
