ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

注册模式,(注册树模式)

2019-06-06 16:42:24  阅读:229  来源: 互联网

标签:function 注册 private host 模式 key public Registry


将很多类实例化成对象,放到一个数组里面,根据你的需求然后取出来用。方便管理。

class  Registry  {  

      protected  static  $store  =  array();     
      private static $instance;  

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

      public function  isValid($key)  {  
        return  array_key_exists($key,  Registry::$store);  
      }  

      public function  get($key)  {  
        if($this->isValid($key))  
        return  Registry::$store[$key];  
      }  

      public  function  set($key,  $obj)  {  
        Registry::$store[$key]  =  $obj;  
      }  
    }  


    class ConnectDB {  

        private $host;  
        private $username;  
        private $password;  

        private $conn;  


        public function __construct($host, $username, $password){  
            $this->host = $host;  
            $this->username = $username;  
            $this->password = $password;  
        }  

        public function getConnect() {  
            return mysql_connect($this->host,$this->username,$this->password);  
        }  

    }  

    echo '<br/>';
    //使用测试  
    $reg = Registry::getInstance();  
    $reg->set('db1', new ConnectDB('localhost', 'root', 'mckee'));  
    $reg->set('db2', new ConnectDB('192.168.1.198', 'test', '0K5Dt@2jdc8#x@'));  
    print_r($reg->get('db1'));  
    print_r($reg->get('db2'));
View Code

设计模式6个原则:https://www.cnblogs.com/sns007/p/6409961.html

标签:function,注册,private,host,模式,key,public,Registry
来源: https://www.cnblogs.com/bneglect/p/10985767.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有