好处:把某些类或者方法注册成全局变量(只需构造一次),调用时直接调用该全局变量即可
$db = IMoocRegister::get('db1');
<?php
namespace IMooc;
class Factory
{
static function createDatabase()
{
$db = Database::getInstance();
Register::set("db1", $db);
return $db;
}
}
<?php
namespace IMooc;
class Register
{
protected $objects;
static function set($alias, $object)
{
self::$objects[$alias] = $object;
}
static function get($alias)
{
return self::$objects[$alias];
}
function _unset($alias)
{
unset(self::$objects[$alias]);
}
}