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