单例模式三部:
1必须有一个构造函数,且设定private
2拥有一个保存类实例的静态成员变量
3拥有一个静态方法
实例:
<?php
//单例模式
class single{
//第一步,私有化构造方法
private function __construct(){ }//声明该方法是防止外部代码使用new来创建对象
//第二步,定义一个静态属性
static $instance = null;//该变量用于保存$obj
//第三部,定义一个静态方法,用于创建一个对象
static function Getobj(){
if(!isset(self::$instance)){
$obj = new self();
self::$instance = $obj;
return self::$instance;
}else{
return self::$instance;
}
}
private function __clone(){}//防止被克隆
function test(){
echo "单例模式测试 <br>";
}
}
$obj1 = single::Getobj();
$obj1->test();
?>
浙公网安备 33010602011771号