注冊(cè)樹模式,屬于結(jié)構(gòu)型的設(shè)計(jì)模式。一種很簡單的設(shè)計(jì)模式
創(chuàng)新互聯(lián)公司是一家專業(yè)提供安次企業(yè)網(wǎng)站建設(shè),專注與成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)、成都外貿(mào)網(wǎng)站建設(shè)、H5場景定制、小程序制作等業(yè)務(wù)。10年已為安次眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)絡(luò)公司優(yōu)惠進(jìn)行中。
類似IOC。寫一個(gè)龐大的類庫的時(shí)候,為了方便各種資源的歸納,可以統(tǒng)一放到一棵樹上。
class RegTree {
private static $objects;
//注冊(cè)
public static function set($name, $object) {
self::$objects[$name] = $object;
}
//獲取
public static function get($name) {
if(empty(self::$objects[$name])) {
throw new \Exception($name . ' does not exists');
}
return self::$objects[$name];
}
public static function destroy($name) {
unset(self::$objects[$name]);
}
}
//調(diào)用端=============================================
$key = 'std_class';
RegTree::set($key, new \StdClass());
print_r(RegTree::get($key));
RegTree::destroy($key);
print_r(RegTree::get($key));