我有这个XML,并希望在节点“ObjectDetails”中获取第二个元素的名称。 名字是“Koop”
$xml = '
<ObjectenLijst TimeStamp="17-07-2012 09:14:46" Versie="12">
<Object>
<ObjectDetails>
<Adres>Niebergweg 1</Adres>
<Koop>
<Prijsvoorvoegsel>vraagprijs</Prijsvoorvoegsel>
<Koopprijs>31000</Koopprijs>
<KoopConditie>kosten koper</KoopConditie>
</Koop>
</ObjectDetails>
</Object>
<ObjectenLijst>' ;
当我使用此XPath时,将返回一个空数组:
$xml = simplexml_load_string($xml);
$result = $xml->xpath('name(//Object/ObjectDetails/*[2])');
答案 0 :(得分:1)
据我所知,SimpleXMLElement::xpath
只能返回SimpleXMLElement
个节点的数组,所以你要做的就是无效。但是,您可以通过以下方式获取节点名称:
$result = $xml->xpath('/ObjectenLijst/Object/ObjectDetails/*[2]');
$name = $result[0]->getName(); // Koop