1、注册器模式
1.1、简介
注册器模式是一种基础常见的设计模式,它的主要意思是把多个类的实例注册到一个注册器类中去。然后需要哪个类,由这个注册器类统一调取。
2、实现
步骤1
创建注册器
Register.php
class Register
{
protected static $objects;
public static function set($alias, $object)
{
self::$objects[$alias] = $object;
}
public static function get($name)
{
if (!isset(self::$objects[$name])){
return null;
}
return self::$objects[$name];
}
public static function _unset($alias)
{
unset(self::$objects[$alias]);
}
}
步骤2
利用工厂模式配合注册器来使用
Factory.php
class Factory
{
public static function getDb()
{
$db = new Database();
Register::set('Db', $db);
return $db;
}
}
步骤3
使用
Register::get('Db');
参考:
https://zhuanlan.zhihu.com/p/110541976