Heim > php教程 > PHP开发 > Zend Framework-Tutorial Zend_Config_Xml-Nutzungsanalyse

Zend Framework-Tutorial Zend_Config_Xml-Nutzungsanalyse

高洛峰
Freigeben: 2017-01-06 09:34:48
Original
1281 Leute haben es durchsucht

Das Beispiel in diesem Artikel beschreibt die Verwendung von Zend_Config_Xml im Zend Framework. Geben Sie es wie folgt als Referenz für alle frei:

Zend_Config_Xml ermöglicht Entwicklern, Konfigurationsdaten in einem einfachen XML-Format zu speichern und sie über die Syntax eingebetteter Objektattribute zu lesen.

Das Wurzelelement der XML-Datei ist irrelevant und kann beliebig benannt werden. XML-Elemente der obersten Ebene entsprechen Abschnitten von Konfigurationsdaten.

Das XML-Format unterstützt die hierarchische Organisation durch die Einbettung von XML-Elementen unterhalb von Elementen auf Abschnittsebene.

Die XML-Elemente auf Blattebene entsprechen den Werten der Konfigurationsdaten. Die Abschnittsvererbung wird durch ein spezielles XML-Attribut namens „Extens“ unterstützt, und der entsprechende Wert dieses Attributs wird durch den Erweiterungsabschnitt geerbt.

Rückgabetyp

In Zend_Config_Xml einlesen Konfigurationsdaten geben immer einen String zurück . Die Konvertierung von Daten aus Zeichenfolgen in andere Typen bleibt den Entwicklern überlassen, um sie an ihre spezifischen Anforderungen anzupassen.

Beispiel: Verwendung von Zend_Config_Xml

Dieses Beispiel veranschaulicht die grundlegende Verwendung von Zend_Config_Xml zum Laden von Konfigurationsdaten aus einer INI-Datei. In diesem Beispiel liegen Konfigurationsdaten für das Produktionssystem und das Stagingsystem vor. Da die Konfigurationsdaten des Entwicklungssystems den Konfigurationsdaten des Produktionssystems ähneln, erben die Abschnitte des Entwicklungssystems von den Abschnitten des Produktionssystems. In diesem Fall ist die Entscheidung willkürlich und kann auch umgekehrt getroffen werden, indem der Produktionssystemabschnitt vom Entwicklungssystemabschnitt erbt, obwohl dies bei komplexeren Fällen nicht möglich ist. Nehmen Sie als Nächstes an, dass die folgenden Konfigurationsdaten in /path/to/config.xml enthalten sind:

<?xml version="1.0"?>
<configdata>
  <production>
    <webhost>www.example.com</webhost>
    <database>
      <adapter>pdo_mysql</adapter>
      <params>
        <host>db.example.com</host>
        <username>dbuser</username>
        <password>secret</password>
        <dbname>dbname</dbname>
      </params>
    </database>
  </production>
  <staging extends="production">
    <database>
      <params>
        <host>dev.example.com</host>
        <username>devuser</username>
        <password>devsecret</password>
      </params>
    </database>
  </staging>
</configdata>
Nach dem Login kopieren

Nehmen Sie als Nächstes an, dass der Entwickler die Entwicklungskonfigurationsdaten aus der XML-Datei abrufen muss. Dies ist sehr einfach, geben Sie einfach die XML-Datei und den Entwicklungssystemabschnitt an, um die Daten zu laden:

$config = new Zend_Config_Xml(&#39;/path/to/config.xml&#39;, &#39;staging&#39;);
echo $config->database->params->host;  // 输出 "dev.example.com"
echo $config->database->params->dbname; // 输出 "dbname"
Nach dem Login kopieren

Beispiel: Verwenden Sie das Tag-Attribut in Zend_Config_Xml

Zend_Config_Xml unterstützt auch die anderen beiden Methoden definiert Knoten in der Konfigurationsdatei. Sie alle nutzen Eigenschaften. Da es sich bei den Attributen „extends“ und „value“ um reservierte Schlüsselwörter handelt (letzteres ist die zweite Möglichkeit, Attribute zu verwenden), dürfen sie nicht verwendet werden. Die erste Möglichkeit, Attribute zu verwenden, besteht darin, das Attribut dem übergeordneten Knoten hinzuzufügen, der selbst zu einem untergeordneten Knoten wird:

<?xml version="1.0"?>
<configdata>
  <production webhost="www.example.com">
    <database adapter="pdo_mysql">
      <params host="db.example.com" username="dbuser" password="secret" dbname="dbname"/>
    </database>
  </production>
  <staging extends="production">
    <database>
      <params host="dev.example.com" username="devuser" password="devsecret"/>
    </database>
  </staging>
</configdata>
Nach dem Login kopieren

Die andere Methode verkleinert die Konfigurationsdatei ebenfalls nicht, erleichtert aber die Wartung. Einfach, weil Sie müssen den Tag-Namen zweimal schreiben. Sie können ein leeres Tag erstellen, das seinen Wert im Wertattribut enthält:

<?xml version="1.0"?>
<configdata>
  <production>
    <webhost>www.example.com</webhost>
    <database>
      <adapter value="pdo_mysql"/>
      <params>
        <host value="db.example.com"/>
        <username value="dbuser"/>
        <password value="secret"/>
        <dbname value="dbname"/>
      </params>
    </database>
  </production>
  <staging extends="production">
    <database>
      <params>
        <host value="dev.example.com"/>
        <username value="devuser"/>
        <password value="devsecret"/>
      </params>
    </database>
  </staging>
</configdata>
Nach dem Login kopieren

Ich hoffe, dieser Artikel ist für alle hilfreich, die sich mit PHP-Programmierung auf Basis des Zend Framework-Frameworks befassen.

Weitere Artikel zum Zend Framework-Tutorial zur Zend_Config_Xml-Nutzungsanalyse finden Sie auf der chinesischen PHP-Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage