Coding Samples, Tutorials, Code Snippets, Articles, How-To`s - From Beginners to Expert. Stay tuned.
Share your knowledge. Regardless what experience you have made with the Zend Framework - Let all benefit.

Search Manual:

Please Sign in or Register

Available Languages

 


Manual for Zend Framework 1.0.3

5.4. Zend_Config_Xml

Zend_Config_Xml ermöglicht es Entwicklern, Konfigurations-Daten in einfachen XML-Dateien zu speichern und sie mit einer Syntax auszulesen, die dem Zugriff auf die Eigenschaften verschachtelter Objekte entspricht. Der Name des Root-Elementes der XML-Datei ist unwichtig und kann beliebig gewählt werden. Die erste Ebene der XML-Struktur stellt die Konfigurationsdaten-Sektionen dar. Hirarchische Strukturen können im XLM-Format durch Verschachteln von XML-Elementen unterhalb der Sektions-Ebene umgesetzt werden. Der Inhalt eines XML-Blatt-Elementes (Leaf) ist der Wert eines Konfigurations-Eintrages. Die Sektions-Vererbung wird durch ein spezielles Attribut namens extends unterstützt, der Wert des Attributs entspricht dabei dem Namen der Sektion, von der Daten geerbt werden sollen.

[Anmerkung] Rückgabe Typen

Konfigurations-Daten, die in Zend_Config_Xml eingelesen wurden, werden immer als Strings zurück gegeben. Die Konvertierung der Daten von Strings in andere Datentypen ist Aufgabe der Entwickler und von deren Bedürfnissen abhängig.

Beispiel 5.4. Zend_Config_Xml benutzen

Dieses Beispiel zeigt die grundlegende Nutzung von Zend_Config_Xml um Konfigurations-Daten aus einem XML-File zu laden. In diesem Beispiel gibt es Konfigurations-Daten für ein Produktiv- und ein Staging-System. Da sich die Daten für das Staging-System nur unwesentlich von denen für das Produktiv-System unterscheiden, erbt das Staging-System vom Produktiv-System. In diesem Fall ist die Entscheidung darüber, welche Sektion von welcher erben soll, willkürlich und es könnte auch anders herum gemacht werden. In komplexeren Fällen ist das möglicherweise nicht der Fall. Nehmen wir also an, dass sich die folgenden Konfigurations-Daten in der Datei /path/to/config.xml befinden:

<?xml version="1.0"?>
<configdata>
    <production>
        <webhost>www.example.com</webhost>
        <database>
            <type>pdo_mysql</type>
            <host>db.example.com</host>
            <username>dbuser</username>
            <password>secret</password>
            <name>dbname</name>
        </database>
    </production>
    <staging extends="production">
        <database>
            <host>dev.example.com</host>
            <username>devuser</username>
            <password>devsecret</password>
        </database>
    </staging>
</configdata>
        

Nehmen wir weiterhin an, dass der Anwendungs-Entwickler die Staging-Konfiguration aus diesem XML-File benötigt. Es ist ein Leichtes, diese Daten zu laden, es muss nur das XML-File und die Staging-Sektion spezifiziert werden:

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

$config = new Zend_Config_Xml('/path/to/config.xml', 'staging');

echo $config->database->host; // gibt "dev.example.com" aus
echo $config->database->name; // gibt "dbname" aus
        

Welcome!

Welcome to ZFResource - The Resource for the Zend Framework.
As you see, the website is in still in progress. Many features ( like Code Directory, Code Samples, User written Tutorials, Examples and News,...) will be online in near future.
At the moment, you can search and browse the manual in your language of choice. Don't forget to come back later to benefit from the new features.


Help Wanted:

We are still searching for people want to help building this site. If you want to see this website in your language or you have any suggestions for this site please send us an email