PHP XML DOM
- 上一页 XML Expat Parser
- 下一页 XML SimpleXML
Sisäänrakennettu DOM-tulkki mahdollistaa XML-dokumenttien käsittelyn PHP:ssä.
Mitä DOM on?
W3C DOM tarjoaa standardeja objekteja HTML- ja XML-dokumentteja varten sekä standardeja käyttöliittymiä näiden dokumenttien käsittelemiseksi.
W3C DOM jaetaan eri osiin (Core, XML ja HTML) ja eri tasoisiin (DOM Level 1/2/3):
- Core DOM - Määrittelee standardeja objekteja kaikille rakenteellisille dokumenteille
- XML DOM - Määrittelee standardeja objekteja XML-dokumentteja varten
- HTML DOM - Määrittelee standardeja objekteja HTML-dokumentteja varten
如果您希望学习更多有关 XML DOM 的知识,请访问我们的 XML DOM 教程。
XML-tulkinta
Jos haluat lukea ja päivittää - luoda ja käsitellä - XML-dokumenttia, tarvitset XML-tulkki.
On kaksi perus XML-tulkintatyyppiä:
- Puuvarttopohjainen tulkki:Tämä tulkki muuntaa XML-dokumentin puuvarttomuodoksi. Se analysoi koko dokumentin ja tarjoaa API:n, jolla voidaan käyttää puun elementtejä, kuten dokumentiobjektimallia (DOM).
- Tapahtumapohjainen tulkki:Näkee XML-dokumentin tapahtumina. Kun tietty tapahtuma tapahtuu, tulkki kutsuu funktioita käsittelemään sitä.
DOM-tulkki on puuvartotulkki.
Katso seuraava XML-dokumentin osa:
<?xml version="1.0" encoding="ISO-8859-1"?> <from>John</from>
XML DOM näkee XML:n puuvarttomuodossa:
- Taso 1: XML-dokumentti
- Taso 2: Juurielementti: <from>
- Taso 3: Tekstielementti: "John"
Asennus
DOM XML-tulkki on PHP:n ytimen osa. Näitä funktioita ei tarvitse asentaa.
XML-tiedosto
Käytämme esimerkissämme seuraavaa XML-tiedostoa:
<?xml version="1.0" encoding="ISO-8859-1"?> <note> <to>George</to> <from>John</from> <heading>Muistutus</heading> <body>Muista kokous! </note>
Lataa ja tulosta XML
Meidän täytyy aloittaa XML-tulkki, ladata XML ja tulostaa se:
例子
<?php $xmlDoc = new DOMDocument(); $xmlDoc->load("note.xml"); print $xmlDoc->saveXML(); ?>
以上代码的输出:
George John Muistutus Muista kokous!
Jos tarkastat koodia selaimen ikkunassa, näet seuraavat HTML-koodit:
<?xml version="1.0" encoding="ISO-8859-1"?> <note> <to>George</to> <from>John</from> <heading>Muistutus</heading> <body>Muista kokous! </note>
上面的例子创建了一个 DOMDocument-Object,并把 "note.xml" 中的 XML 载入这个文档对象中。
saveXML() 函数把内部 XML 文档放入一个字符串,这样我们就可以输出它。
循环 XML
我们要初始化 XML 解析器,加载 XML,并循环 <note> 元素的所有元素:
例子
<?php $xmlDoc = new DOMDocument(); $xmlDoc->load("note.xml"); $x = $xmlDoc->documentElement; foreach ($x->childNodes AS $item) { print $item->nodeName . " = " . $item->nodeValue . "<br />"; } ?>
以上代码的输出:
#text = to = George #text = from = John #text = heading = Muistutus #text = body = Älä unohda kokousta! #text =
在上面的例子中,您看到了每个元素之间存在空的文本节点。
当 XML 生成时,它通常会在节点之间包含空白。XML DOM 解析器把它们当作普通的元素,如果您不注意它们,有时会产生问题。
如果您希望学习更多有关 XML DOM 的知识,请访问我们的 XML DOM 教程。
- 上一页 XML Expat Parser
- 下一页 XML SimpleXML