php单例模式简化分析为:一个私有,两个静态,一个判断。
一个私有:定义一个private类,也就是private function __construct(){}。
两个静态:在类里声明一个静态属性和一个静态方法。
一个判断:在静态方法里判断静态属性是否为空,空则实例化类,非空则直接返回静态属性。
代码示例:
class Db {
static $obj;
private function __construct () {
/*链接数据库操作*/
echo '成功!';
}
static function getDb () {
if(is_null(self::obj))
self::obj = new self();
return self::obj;
}
}