首页  >  文章  >  php教程  >  php设计模式入门-注册表模式

php设计模式入门-注册表模式

WBOY
WBOY原创
2016-06-13 08:56:59964浏览

php设计模式入门-注册表模式

对于这个模式的应用场景不是太好总结,只是根据之前的经验,注册表类里面经常会存储一些别的地方需要用到的对象,比如redis、memcache类,还比如配置信息config类等,它扮演的是一个类似于全局变量的角色。具体的实现其实非常简单,如下代码所示:

 

<!--?php
class Registry{
     static $instance;
     public $containers = array();

     static function getInstance(){
          if(is_null(self::$instance)){
               self::$instance = new self();
          }
          return self::$instance;
     }

     public function set($key, $value){
          $this--->containers[$key] = $value;
     }

     public function get($key){
          return isset($this->containers[$key]) ? $this->containers[$key] : null;
     }
}

$registry = Registry::getInstance();
$registry->set(&#39;key1&#39;, &#39;hello&#39;);<span style="white-space:pre">	</span>//只是为了测试,通常注册表中存储的数据都是对象
var_dump($registry->get(&#39;key1&#39;));
var_dump($registry->get(&#39;key2&#39;));

 

 

 

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn