Zend_Config_Ini
umożliwia programistom przechowywanie
danych konfiguracyjnych w plikach INI i uzyskanie dostępu
do nich jak do właściwości obiektu za pomocą Zend_Config
.
Przykład 3.3. Dane konfiguracyjne przechowywane w plikach INI
Ten przykład pokazuje proste użycie klasy Zend_Config_Ini
do ładowania danych konfiguracyjnych z plików INI. Załóżmy, że mamy
następujące dane konfiguracyjne w pliku /path/to/config.ini
:
; Podstawowe dane konfiguracyjne [production] webhost = www.example.com database.type = pdo_mysql database.host = db.example.com database.username = dbuser database.password = secret database.name = dbname ; Konfiguracja aplikacji rozbudowywanej dziedziczy z podstawowej ; konfiguracji, a niektóre wartości są nadpisywane [staging] extends = production database.host = dev.example.com database.username = devuser database.password = devsecret
Notatka | |
---|---|
Zauważ, że składnia pliku INI jest podobna do tej wymaganej przez funkcję PHP
parse_ini_file() ,
której używa Zend_Config_Ini . Proszę przejrzeć jej dokumentację
aby znać specyfikę działania klasy Zend_Config_Ini , na przykład
w kwestii traktowania specjalnych wartości takich jak true ,
false , yes , no , oraz null .
|
Dziedziczenie jest obsługiwane w składni pliku INI przez użycie słowa extends
.
Wartością klucza extends
powinna być nazwa sekcji z której ma dziedziczyć
nowa sekcja. Dane konfiguracyjne są wtedy ładowane z pliku INI w taki sposób:
<?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; // wyświetla "dev.example.com" ?>