Heim  >  Artikel  >  Backend-Entwicklung  >  Verwendung von DOM zur Steuerung von XML in PHP5(1)

Verwendung von DOM zur Steuerung von XML in PHP5(1)

黄舟
黄舟Original
2016-12-15 12:57:491157Durchsuche

PHP5 verfügt über eine verbesserte XML-Unterstützung und nutzt DOM, um die XML-Betriebsmöglichkeiten zu erweitern. Diese Funktionen sind Teil des PHP5-Kerns und müssen zur Nutzung nicht installiert werden.

Das folgende Beispiel demonstriert einfach die Funktionsweise von DOM auf XML. Eine ausführliche Erklärung finden Sie in den Kommentaren im Code

/************************************************ 
  * * XML in PHP5 verwenden 
  ** Referenzseite: 
  ** http://cn.php.net/manual/zh/ref.dom.php 
  ** Die folgenden Codes benötigen PHP5-Unterstützung 
  ** www.knowsky.com 
  ***************************************** **********/


//Erstellen Sie zuerst ein DOMDocument-Objekt
$dom = new DomDocument();
//Laden Sie dann die XML-Datei
$dom -> " );

//XML-Datei ausgeben
//header("Content-type: text/xml;charset=gb2312");
//echo $dom -> saveXML() ;

//Speichern Sie die XML-Datei, der Rückgabewert ist int (Dateigröße in Bytes)
//$dom -> echo "


Get all title elements:
";
$titles = $dom -> getElementsByTagName("title");
{
echo $node -> textContent . //Das funktioniert auch
//echo $node->firstChild->data .
";
}

/*
echo "
Alle Knoten vom Wurzelknoten aus durchlaufen:
";
foreach ($dom->documentElement->childNodes as $items) {
//Wenn der Knoten ein Element ist (nodeType == 1) und der Name ein Element ist, fahren Sie mit der Schleife fort
if ($items - >nodeType == 1 && $items->nodeName == "item") {
foreach ($items->childNodes as $titles) {
//Wenn der Knoten ein Element ist und der Name Wenn es sich um einen Titel handelt, drucken Sie ihn aus.
if ($titles->nodeType == 1 && $titles->nodeName == "title") {
print $titles->textContent . ;
}
}
}
}
*/

// XPath verwenden, um Daten abzufragen
echo "
Das Ergebnis des Titelknotens der Verwendung einer XPath-Abfrage :
";
$xpath = new domxpath($dom);
$titles = $xpath->query("/rss/channel/item/title") ;
foreach ($titles as $node)
{
echo $node->textContent."
"; und verwenden Sie getElementsByTagName(). Die Methoden sind ähnlich, aber Xpath ist viel leistungsfähiger
Ein genauerer Blick könnte so aussehen:
/rss/channel/item[position() = 1]/title Gibt das gesamte erste Element zurück element
/rss/channel/item/title[@id = '23'] Gibt alle Titel zurück, die das id-Attribut enthalten und der Wert 23 ist.
/rss/channel/&folder&/title Gibt alle Titel unter dem Artikelelement zurück (Anmerkung des Übersetzers: &folder& stellt die Verzeichnistiefe dar)
*/

Das Obige ist der Inhalt der Verwendung von DOM zur Steuerung von XML(1) in PHP5
Weitere verwandte Artikel finden Sie hier die chinesische PHP-Website (www.php.cn)!




Stellungnahme:
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