单例模式
使某个类的对象仅允许创建一个(减少资源浪费)
定义
<?php
class Test{
//私有属性,用于保存实例
private static $instance;
//构造方法私有化,防止外部创建实例
private function __construct(){}
//公有方法,用于获取实例
public static function getInstance(){
//判断实例有无创建,没有的话创建实例并返回,有的话直接返回
if(!(self::$instance instanceof self)){
self::$instance = new self();
}
return self::$instance;
}
//克隆方法私有化,防止复制实例
private function __clone(){}
}
- 使用
$first = Test::getInstance();
- 好处
减少资源(mysql链接)浪费