如何在simplexml对象中获取最后一项(或任何特定项目)?假设您不知道将有多少个节点.
恩.
我想抓住最后
一块(或者甚至只是它的一部分).
使用XPath的last()
函数,它解决了这个问题:
registerXPathNamespace('o', 'http://obix.org/ns/schema/1.0'); $xpath = "/o:obj/o:list/o:obj[last()]/o:int[@name = 'energy_in_kwh']"; $last_kwh = $xml->xpath($xpath); ?>
在这里,它寻找最后的内部
,其中
的名称为"energy_in_kwh"
.
注意命名空间注册.(所有元素都是"http://obix.org/ns/schema/1.0"
命名空间的一部分,XPath查询必须反映出来.
编辑:注意[last()]
相当于[position() = last()]
.