Класс 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".

Обзор классов

Yaf_Config_Ini extends Yaf_Config_Abstract implements Iterator , ArrayAccess , Countable {
/* Свойства */
/* Методы */
public __construct ( string $config_file , string $section = ? )
public count ( ) : void
public current ( ) : void
public __get ( string $name = ? ) : void
public __isset ( string $name ) : void
public key ( ) : void
public next ( ) : void
public offsetExists ( string $name ) : void
public offsetGet ( string $name ) : void
public offsetSet ( string $name , string $value ) : void
public offsetUnset ( string $name ) : void
public readonly ( ) : void
public rewind ( ) : void
public __set ( string $name , mixed $value ) : void
public toArray ( ) : array
public valid ( ) : void
/* Наследуемые методы */
abstract public Yaf_Config_Abstract::get ( string $name , mixed $value ) : mixed
abstract public Yaf_Config_Abstract::readonly ( ) : bool
abstract public Yaf_Config_Abstract::toArray ( ) : array
}

Свойства

_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

Содержание