PHP设计模式 -- 注册模式
Posted 我的开发之路
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP设计模式 -- 注册模式相关的知识,希望对你有一定的参考价值。
参考文章:https://segmentfault.com/a/1190000007495855
简介
注册树模式
又称注册模式
或注册器模式
。注册树模式通过将对象实例注册到一棵全局的对象树上,需要的时候从对象树上采摘的模式设计方法。和果树不同的是,果子只能采摘一次,而注册树上的实例却可以无数次获取。
使用了注册树模式后,对于实例,我们能够更好地统筹管理安排,就像使用全局变量一样的方便实用。
示例:
<?php /** * Class Register 注册树类 */ class Register { // 树的枝干-用于储存树上的果实(实例) public static $objects; // array /** * 将实例插入注册树中 * * @param $alias 对象别名-注册树中的名称 * @param $object 对象实例 */ public static function set($alias, $object) { self::$objects[$alias] = $object; } /** * 从注册树中读取实例 * * @param $alias 对象别名-注册树中的名称 * * @return mixed 返回的对象实例 */ public static function get($alias) { if (isset(self::$objects[$alias])) { return self::$objects[$alias]; } else { echo \'对象弄丢了\'; } } /** * 销毁注册树中的实例 * * @param $alias 对象别名-注册树中的名称 */ public static function _unset($alias) { unset(self::$objects[$alias]); } } Register::set(\'conf\', array(\'dbhost\' => \'127.0.0.1\')); print_r(Register::get(\'conf\'));
结果:
以上是关于PHP设计模式 -- 注册模式的主要内容,如果未能解决你的问题,请参考以下文章