Класс Yaf_Config_Ini
(Yaf >=1.0.0)
Введение
Yaf_Config_Ini позволяет разработчикам хранить конфигурационные данные в известном INI формате и читать их в приложении с использованием синтаксиса вложенных свойств объекта. INI формат специализируется на обеспечении возможности иметь иерархию ключей конфигурационных данных и наследовании между разделами конфигурационных данных. Иерархия конфигурационных данных поддерживается путем разделения ключей с точкой ("."). Разделы можно расширять или наследовать от других разделов путем проставления после имени раздела двоеточия (":") и названия раздела от которого данные унаследованы.
Замечание:
Yaf_Config_Ini использует функцию parse_ini_file(). Пожалуйста изучите документацию для понимания ее поведения, которое наследует Yaf_Config_Ini, такого как обработка специальных значений "
true
", "false
", "yes", "no", и "null
".
Обзор классов
Свойства
- _config
- _readonly
Примеры
Пример #1 Yaf_Config_Ini()example
Этот пример раскрывает базовые особенности использования Yaf_Config_Ini при загрузке данных из INI-файла. В этом примере задается конфигурация для промышленной и демонстрационной среды. Так как конфигурация демо-среды очень похожа на конфигурацию промышленной, то она наследует от нее. Но вы в своих приложениях вольны поступать как хотите. В общем, вот такая конфигурация задана в /path/to/config.ini:
; Промышленная среда [production] webhost = www.example.com database.adapter = pdo_mysql database.params.host = db.example.com database.params.username = dbuser database.params.password = secret database.params.dbname = dbname ; Демо-среда. Наследует конфигурацию промышленной с некоторыми поправками [staging : production] database.params.host = dev.example.com database.params.username = devuser database.params.password = devsecret
<?php
$config = new Yaf_Config_Ini('/path/to/config.ini', 'staging');
var_dump($config->database->params->host);
var_dump($config->database->params->dbname);
var_dump($config->get("database.params.username"));
?>
Результатом выполнения данного примера будет что-то подобное:
string(15) "dev.example.com" string(6) "dbname" string(7) "devuser
Содержание
- Yaf_Config_Ini::__construct — Конструктор класса Yaf_Config_Ini
- Yaf_Config_Ini::count — Подсчитывает все элементы в Yaf_Config.ini
- Yaf_Config_Ini::current — Получает текущее значение
- Yaf_Config_Ini::__get — Получает элемент
- Yaf_Config_Ini::__isset — Определяет, существует ли ключ
- Yaf_Config_Ini::key — Получает ключ текущего элемента
- Yaf_Config_Ini::next — Продвигает внутренний указатель
- Yaf_Config_Ini::offsetExists — Назначение offsetExists
- Yaf_Config_Ini::offsetGet — Назначение offsetGet
- Yaf_Config_Ini::offsetSet — Назначение offsetSet
- Yaf_Config_Ini::offsetUnset — Назначение offsetUnset
- Yaf_Config_Ini::readonly — Назначение readonly
- Yaf_Config_Ini::rewind — Назначение rewind
- Yaf_Config_Ini::__set — Назначение __set
- Yaf_Config_Ini::toArray — Возвращает конфигурацию как массив PHP
- Yaf_Config_Ini::valid — Назначение valid