注册表模式

注册表的作用是提供系统级别的对象访问功能,虽然全局变量不怎么好,但全局性的数据范文仍然吸引力.<p>许多企业级的系统都分为几个层次,每个层次通过定义好的接口进行交流。层的分离使应用程序变得灵活,但是,当你需要在一个层中获得另一个不相邻层中的信息时就会遇到困难。可以使用注册表模式来解决问题。</p><p><img src="data:image/png;base64,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" alt="" /></p>class Registry{
       private static $instance;
       private $request;

       private __function();
       static function instance(){
                if(!isset(self::$instance)){
                           self::$instance=new self();
               }
               return   self::$instance;
       }
       function getRequest(){
               return $this->request;
      }
      function setRequest(Request  $request){
               $this->request=$request;
    }
}

Requstry是一个单例对象,通过set和get设置request

另外可以 将$request 改为一个数组,设置多个变量,通过键来访问值。

你可以使用注册表对象作为普通对象的工厂,它可以做一些幕后的配置工作,例如,从配置文件中得到数据或合并一组对象。

另外,注册表对象对于测试也很有用,通过设置一个模式属性,在静态方法中提供模拟的对象。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值