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"
?>