Не использовал бы, т.к. глобальную переменную $___REGISTER можно случайно или намеренно изменить, а потом искать, где «собака порылась».
Если очень хочется использовать stdClass в качестве контейнера в реестре, то я бы предложил поступить так:
class Registry extends stdClass {
private static $instance;
private function __construct () {}
private function __clone () {}
public static function me ()
{
if (self::$instance === null)
self::$instance = new self;
return self::$instance;
}
}
# Использовать так
Registry::me()->config = new stdClass;
Registry::me()->config->host = 'habrahabr.ru';
Registry::me()->config->admin = 'admin@habrahabr.ru';
Registry::me()->config->name = 'Хабрахабр';