/**
*单利模式:三私一公
*私有化构造方法:使类外无法直接实例化
*私有化__clone():使对象无法被克隆
*私有化静态属性用于存放实例
*公有化一个静态方法用于创建对象
*/
class Human{
private static $instance=NULL;//私有化静态属性用于存放实例
private function __construct(){} //使类外无法直接实例化
private function __clone(){}//使对象无法被克隆
/**
*公有化一个静态方法用于创建对象
*/
public static function CreateClass(){
if(!self::$instance instanceof self){
self::$instance=new self();
}
return self::$instance;
}
}
$h=Human::CreateClass();
$hh=Human::CreateClass();
$h->a=10;
$hh->a=20;
var_dump($h,$hh);
//object(Human)#1 (1) { ["a"]=> int(20) } object(Human)#1 (1) { ["a"]=> int(20) }
php单例模式
最新推荐文章于 2024-01-10 16:34:32 发布