Klasa Zend_Config
została stworzona aby uprościć użycie danych
konfiguracyjnych w aplikacjach. Dostarcza ona interfejs bazujący na właściwościach
obiektów służący do odczytywania danych konfiguracyjnych wewnątrz kodu aplikacji.
Dane konfiguracyjne mogą pochodzić z różnego rodzaju źródeł, w których dane
konfiguracyjne są przechowywane hierarchiczne. Obecnie Zend_Config
dostarcza
klasy obsługujące dane konfiguracyjne przechowywane w plikach tekstowych:
Zend_Config_Ini
, oraz
Zend_Config_Xml
.
Przykład 5.1. Użycie Zend_Config
Normalnie jest tak, że użytkownicy użyliby jednej z klas adaptera,
takiej jak Zend_Config_Ini
czy Zend_Config_Xml
,
ale dane konfiguracyjne mogą być też dostępne w tablicy PHP. Można w prosty
sposób przekazać tablicę do konstruktora Zend_Config
w celu
uzyskania obiektu zawierającego dane konfiguracyjne:
<?php // Tablica danych konfiguracyjnych $configArray = array( 'webhost' => 'www.example.com', 'database' => array( 'type' => 'pdo_mysql', 'host' => 'db.example.com', 'username' => 'dbuser', 'password' => 'secret', 'name' => 'dbname' ) ); // Tworzy obiekt konfiguracji na podstawie danych konfiguracyjnych require_once 'Zend/Config.php'; $config = new Zend_Config($configArray); // Wyświetlenie wpisu z konfiguracji (wynikiem jest 'www.example.com') echo $config->webhost; // Użycie danych konfiguracyjnych w celu połączenia się z bazą danych $myApplicationObject->databaseConnect($config->database->type, $config->database->host, $config->database->username, $config->database->password, $config->database->name);
Jak zostało pokazane w powyższym przykładzie, klasa Zend_Config
zapewnia składnię zagnieżdżonych właściwości obiektów w celu uzyskania
dostępu do danych konfiguracyjnych przekazanych do konstruktora.