Wzorzec projektowy Property służy do przechowywania i udostępniania danych konfiguracyjnych programu. Zastępuje zmienne globalne i ma podobne zastosowanie jak wzorzec Singleton. W przypadku wzorca Property dane przechowywane są w statycznej tablicy. Do ich ustawiania i pobierania służą statyczne metody set() i get().
PRZYKŁAD IMPLEMENTACJI
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
<?php // Config.php // Property class Config { private static $data = array(); public static function set($name, $value) { self::$data[$name] = $value; } public static function get($name) { return self::$data[$name]; } } |
Użycie wzorca w obrębie aplikacji:
1 2 3 4 5 6 7 8 9 10 11 12 |
<?php // test.php spl_autoload_register(function ($class) { include $class . '.php'; }); // Przykładowe ustawienia aplikacji: Config::set('LANG','en'); Config::set('WEBSITE_URL','example.com'); // Wyświetlenie danych: echo '<p>'.Config::get('LANG').'</p>'; echo '<p>'.Config::get('WEBSITE_URL').'</p>'; // ... |