Rozdział 5. Zend_Config
Poprzedni |  | Następny

## Rozdział 5. Zend_Config

## 5.1. Wprowadzenie

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.

Poprzedni |  | Następny
4.4. Backendy Zend_Cache | Spis treści | 5.2. Zasady działania