Глава 5. Zend_Config
Пред. |  | След.

## Глава 5. Zend_Config

## 5.1. Введение

`Zend_Config` спроектирован для того, чтобы сделать более простым доступ и использование конфигурационных данных внутри приложения. Он предоставляет основанный на вложенных свойствах объектов пользовательский интерфейс для доступа к конфигурационным данным внутри приложения. Конфигурационные данные могут храниться на различных носителях информации, поддерживающих иерархическое хранение данных. На данный момент `Zend_Config` предоставляет адаптеры для конфигурационных данных, хранящихся в текстовых файлах: `Zend_Config_Ini` и `Zend_Config_Xml`.

Пример 5.1. Использование Zend_Config без адаптеров

Обычно предполагается, что используется один из классов адаптеров `Zend_Config_Ini` или `Zend_Config_Xml`. Но если конфигурационные данные доступны в виде массива PHP, то можно просто передавать эти данные конструктору `Zend_Config`, чтобы использовать преимущества простого объектно-ориентированного интерфейса.

    <?php
    // Массив конфигурационных данных
    $configArray = array(
        'webhost' => 'www.example.com',
        'database' => array(
            'type'     => 'pdo_mysql',
            'host'     => 'db.example.com',
            'username' => 'dbuser',
            'password' => 'secret',
            'name'     => 'dbname'
        )
    );

    // Создание объектно-ориентированной обертки для конфигурационных данных
    require_once 'Zend/Config.php';
    $config = new Zend_Config($configArray);

    // Вывод элемента конфигурационных данных (результатом будет 'www.example.com')
    echo $config->webhost;

    // Использование конфигурационных данных для соединения с базой данных
    $myApplicationObject->databaseConnect($config->database->type,
                                          $config->database->host,
                                          $config->database->username,
                                          $config->database->password,
                                          $config->database->name);

Как показано в предыдущем примере, в `Zend_Config` для доступа к конфигурационным данным, переданным его конструктору, используется синтаксис вложенных свойств объектов.

Пред. |  | След.
4.4. Бэкэнды Zend_Cache | Начало | 5.2. Основы работы