我有以下示例xml:
<entity id="1">
<name>computer</name>
<type>category</type>
<entities>
<entity id="2">
<name>mac</name>
<type>category</type>
</entity>
<entity id="3">
<name>linux</name>
<type>category</type>
<entities>
<entity id="4">
<name>ubuntu</name>
<type>category</type>
</entity>
<entity id="5">
<name>redhat</name>
<type>category</type>
<entities>
<entity id="6">
<name>server</name>
<type>category</type>
</entity>
<entity id="7">
<name>desktop</name>
<type>category</type>
</entity>
</entities>
</entity>
</entities>
</entity>
</entities>
</entity>
如果我有一个id,请说5.是否可以检索以下内容:
我是一个解析xml的菜鸟。这是由xpath only还是xquery / xpath?
完成的如果有人可以通过simplexml为我提供一些示例代码,我将不胜感激。
谢谢!
答案 0 :(得分:1)
您可以使用SimpleXML。
答案 1 :(得分:1)
<?php
$simpleXml = simplexml_load_string($xml); // or load your file, whatever
if (($element = $simpleXml->xpath('//*[@id = 5]'))) {
var_dump($element);
echo 'Element and descendants: ', $element[0]->asXML(), PHP_EOL;
echo 'Name of the entity: ', $element[0]->name, PHP_EOL;
}