3.4. Zend_Config_Xml
Пред. | Глава 3. Zend_Config | След.

## 3.4. Zend_Config_Xml

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

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

Пример 3.4. Конфигурационные данные в файлах XML

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

    <?xml version="1.0"?>
    <config>
        <production>
            <webhost>www.example.com</webhost>
            <database>
                <type>pdo_mysql</type>
                <host>db.example.com</host>
                <username>dbuser</username>
                <password>secret</password>
                <name>dbname</name>
            </database>
        </production>
        <staging extends="production">
            <database>
                <host>dev.example.com</host>
                <username>devuser</username>
                <password>devsecret</password>
            </database>
        </staging>
    </config>

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

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

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

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

| Замечание
Конфигурационные данные из `Zend_Config_Xml` всегда интерпретируются как строки.

Пред. | Уровень выше | След.
3.3. Zend_Config_Ini | Начало | Глава 4. Zend_Controller