单例模式就是一个类只能有一个对象实例,要实现单例模式注意一下两点
- 该类自己创建该类的唯一对象
- 对外暴露一个统一的接口,用于获取该对象
PHP实现时还要注意防止直接创建对象和克隆
1 <?php
2 /**
3 * Single.php
4 * Created on 2019/8/30 10:03
5 * Created by Wilin
6 */
7
8 class Single
9 {
10 private static $instance;
11
12 //防止直接创建对象
13 private function __construct(){}
14 //防止克隆
15 private function __clone(){}
16
17 public static function getInstance(){
18 if (!self::$instance instanceof self) {
19 self::$instance = new self();
20 }
21 return self::$instance;
22 }
23 }