3.3. Zend_Config_Ini
Terug | Hoofdstuk 3. Zend_Config | Volgende

## 3.3. Zend_Config_Ini

### 3.3.1. Inleiding

`Zend_Config_Ini` laat developeurs toe on configuratiedata in een gekend INI formaat op te slaan en ze te lezen via objecteigenschappen door middel van `Zend_Config`.

Voorbeeld 3.3. Configuratiedata Opgeslaan in INI Bestanden

Dit voorbeeld illustreert het basisgebruik van `Zend_Config_Ini` voor het laden van configuratiedata vanuit een INI bestand. Veronderstel dat we de volgende configuratiedata in een `/pad/naar/config.ini` bestand hebben:

    ; Productie site configuratiedata
    [productie]
    webhost           = www.example.com
    database.type     = pdo_mysql
    database.host     = db.example.com
    database.username = dbuser
    database.password = secret
    database.name     = dbname

    ; Ontwikkelingssite configuratiedata erft van productiesite en
    ; overschrijft waardes waar nodig
    [staging]
    extends = productie
    database.host     = dev.example.com
    database.username = devuser
    database.password = devsecret

| Opmerking
Merk op dat de syntax van het INI bestand lijkt op diegene die verwacht word door de `parse_ini_file()` PHP functie, die door `Zend_Config_Ini` wordt gebruikt. Kijk deze documentatie na om op de hoogte te zijn van het specifieke gedrag van `Zend_Config_Ini`, zoals hoe de speciale waarden `true`, `false`, `yes`, `no`, en `null` worden vertaald.

Erfelijkheid word ondersteund in de INI syntax door het gebruik van het keywoord `extends`. De waarde van de `extends` key moet dezelfde zijn als de naam van de sectie waarvan de verwijzende sectie moet overerven. De configuratiedata wordt dan ingeladen van het INI bestand:

    <?php
    require_once 'Zend/Config.php';
    require_once 'Zend/Config/Ini.php';

    $config = new Zend_Config(Zend_Config_Ini::load('/pad/naar/config.ini', 'staging'));

    echo $config->database->host; // prints "dev.example.com"
    ?>

Terug | Omhoog | Volgende
3.2. Zend_Config_Array | Begin | 3.4. Zend_Config_Xml