Helper Registry
1Apresentação
Este helper é usado para armazenar dados de forma mais organizada do que usando variáveis globais.
Os dados armazenados em um registro podem ser acessados (leitura e escrita) de três formas diferentes: por meio de getters/setters, por meio de uma notação orientada a objetos, ou por meio de uma notação semelhante a um array.
2Uso
// cria um novo registro
$registry = new \Temma\Utils\Registry();
// cria um registro e define dados iniciais
$registry = new \Temma\Utils\Registry([
'foo' => 'bar',
'abc' => 'xyz',
]);
// lê um arquivo INI e armazena seus dados no registro
$registry->readIni('/path/to/file.ini');
// lê um arquivo JSON e armazena seus dados no registro
$registry->readJson('/path/to/file.json');
// lê um arquivo XML e armazena seus dados em uma chave do registro
$registry->readXml('/path/to/file.xml', 'config');
// acessa dados do registro (três métodos, mesmo resultado)
print($registry->get('foo'));
print($registry->foo);
print($registry['foo']);
// adiciona dados ao registro (três métodos, mesmo resultado)
$registry->set('foo', 'bar');
$registry->foo = 'bar';
$registry['foo'] = 'bar';
// adiciona vários dados em uma única chamada
$registry->set([
'foo' => 'bar',
'abc' => 'xyz',
]);
// verifica se o dado existe (três métodos, mesmo resultado)
if ($registry->isset('foo'))
print('OK');
if (isset($registry->foo))
print('OK');
if (isset($registry['foo']))
print('OK');
// remove dados (três métodos, mesmo resultado)
$registry->unset('foo');
unset($registry->foo);
unset($registry['foo']);