3.3. Zend_Config_Ini
Пред. | Глава 3. Zend_Config | След.

## 3.3. Zend_Config_Ini

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

`Zend_Config_Ini` дает разработчикам возможность хранить конфигурационные данные в известном большинству формате INI и читать их посредством свойств объекта через `Zend_Config`.

Пример 3.3. Конфигурационные данные в файле INI

Этот пример иллюстрирует основы использования `Zend_Config_Ini` для загрузки конфигурационных данных из файла INI. Предположим, мы имеем следующие конфигурационные данные в `/path/to/config.ini`:

    ; Конфигурационные данные производственного сайта
    [production]
    webhost           = www.example.com
    database.type     = pdo_mysql
    database.host     = db.example.com
    database.username = dbuser
    database.password = secret
    database.name     = dbname

    ; Конфигурационные данные промежуточного сайта наследуются от
    ; производственного варианта и значения замещаются на нужные
    [staging]
    extends = production
    database.host     = dev.example.com
    database.username = devuser
    database.password = devsecret

| Замечание
Обратите внимание, что синтаксис файла INI походит на тот, что ожидается для функции PHP `parse_ini_file()`, ее использует класс `Zend_Config_Ini`. Пожалуйста, ознакомьтесь с этой документацией, чтобы знать специфику поведения `Zend_Config_Ini` -- как, например, транслируются специальные значения `true`, `false`, `yes`, `no` и `null`.

В синтаксисе INI наследование поддерживается посредством использования ключевого слова `extends`. Значением ключа `extends` должно быть имя раздела, из которого наследует данный раздел. Конфигурационные данные загружаются из файла INI:

    <?php
    require_once 'Zend/Config.php';
    require_once 'Zend/Config/Ini.php';

    $config = new Zend_Config(Zend_Config_Ini::load('/path/to/config.ini', 'staging'));

    echo $config->database->host; // выводит: "dev.example.com"
    ?>

Пред. | Уровень выше | След.
3.2. Zend_Config_Array | Начало | 3.4. Zend_Config_Xml