Helper Registry
1Présentation
Le "registre" sert à stocker des données plus proprement qu'en utilisant des variables globales.
L'accès (en lecture et en écriture) aux données stockées dans un registre peut se faire de trois manières différentes : en passant par des getters/setters, en passant par une notation orientée objet, ou en passant par une notation comme un tableau.
2Utilisation
use \Temma\Utils\Registry as TµRegistry;
// création d'un registre
$registry = new TµRegistry();
// création d'un registre avec initialisation des données
$registry = new TµRegistry([
'foo' => 'bar',
'abc' => 'xyz',
]);
// lit un fichier INI et stocke son contenu dans le registre
$registry->readIni('/chemin/vers/fichier.ini');
// lit un fichier JSON et stocke son contenu dans le regsitre
$registry->readJson('/chemin/vers/fichier.json');
// lit un fichier XML et stocke son contenu dans la clé 'config'
$registry->readXml('/chemin/vers/fichier.xml', 'config');
// lecture des données du registre (trois manières, même résultat)
print($registry->get('foo'));
print($registry->foo);
print($registry['foo']);
// ajout de données au registre (trois manières, même résultat)
$registry->set('foo', 'bar');
$registry->foo = 'bar';
$registry['foo'] = 'bar';
// ajout de données multiples
$registry->set([
'foo' => 'bar',
'abc' => 'xyz',
]);
// vérification de l'existence d'une donnée (trois manières, même résultat)
if ($registry->isset('foo'))
print('OK');
if (isset($registry->foo))
print('OK');
if (isset($registry['foo']))
print('OK');
// effacement de données (trois manières, même résultat)
$registry->unset('foo');
unset($registry->foo);
unset($registry['foo']);