PHP SimpleXML
SimpleXML hanterar de mest vanliga XML-uppgifterna, medan övriga uppgifter överlämnas till andra utökningar.
Vad är SimpleXML?
SimpleXML är en ny funktion i PHP 5. Under förutsättning att du känner till layouten av XML-dokument är det ett bekvämt sätt att få tag på elementets egenskaper och text.
Jämfört med DOM eller Expat-parser kan SimpleXML läsa textdata från element med bara några rader kod.
SimpleXML kan konvertera XML-dokument till objekt, till exempel:
- Element - Konverteras till SimpleXMLElement-objekt. När det finns flera element på samma nivå, placeras de i en array.
- Egenskaper - Åtkomna genom att använda en kopplingsarray, där indexen motsvarar egenskapsnamnet.
- Elementdata - Textdata från element konverteras till sträng. Om ett element har flera textnoder, ordnas de i den ordning de hittas.
När du utför grundläggande uppgifter som följande, är SimpleXML mycket snabbt att använda:
- Läs XML-fil
- Extrahera data från en XML-sträng
- Redigera textnod eller egenskap
Men när det gäller att hantera avancerad XML, som namnrymdar, är det bäst att använda Expat-parser eller XML DOM.
Installera
Från PHP 5.0 började SimpleXML-funktionen vara en del av PHP-kärnan. Det är inte nödvändigt att installera för att använda dessa funktioner.
Använd SimpleXML
Nedan är en XML-fil:
<?xml version="1.0" encoding="ISO-8859-1"?> <note> <to>George</to> <from>John</from> <heading>Reminder</heading> <body>Don't forget the meeting!</body> </note>
我们打算从上面的 XML 文件输出元素的名称和数据。
这是需要做的事情:
- 加载 XML 文件
- 取得第一个元素的名称
- 使用 children() 函数创建在每个子节点上触发的循环
- 输出每个子节点的元素名称和数据
例子
<?php $xml = simplexml_load_file("test.xml"); echo $xml->getName() . "<br />"; foreach($xml->children() as $child) { echo $child->getName() . ": " . $child . "<br />"; } ?>
以上代码的输出:
note to: George from: John heading: Reminder body: Don't forget the meeting!
更多有关 PHP SimpleXML 的信息
如需更多有关 PHP SimpleXML 的信息,请访问我们的 PHP SimpleXML 参考手册。