對於這個模式的應用場景不是太好總結,只是根據之前的經驗,注冊表類裡面經常會存儲一些別的地方需要用到的對象,比如redis、memcache類,還比如配置信息config類等,它扮演的是一個類似於全局變量的角色。具體的實現其實非常簡單,如下代碼所示:
containers[$key] = $value; } public function get($key){ return isset($this->containers[$key]) ? $this->containers[$key] : null; } } $registry = Registry::getInstance(); $registry->set('key1', 'hello'); //只是為了測試,通常注冊表中存儲的數據都是對象 var_dump($registry->get('key1')); var_dump($registry->get('key2'));