我正在xml流上运行xpath查询并检索一组数据。在这我需要找到标签名称。但我不能找到检索标签名称的方式。 XML流是在php中查找孩子simplexml xpath
<Condition>
<Normal dataItemId="Xovertemp-06" timestamp="2011-09-02T03:35:34.535703Z" name="Xovertemp" sequence="24544" type="TEMPERATURE"/>
<Normal dataItemId="Xservo-06" timestamp="2011-09-02T03:35:34.535765Z" name="Xservo" sequence="24545" type="LOAD"/>
<Normal dataItemId="Xtravel-06" timestamp="2011-09-02T03:35:34.535639Z" name="Xtravel" sequence="24543" type="POSITION"/>
</Condition>
我试图分析此为
Temperature = Normal
Load - Normal
所以我所做的是
foreach ($xml->xpath("//n:Condition")->children("n") as $child) {
echo $child["type"] . "=" . $child->getName();
}
我正在跟随着错误
Fatal error: Call to a member function children() on a non-object in C:\xampp\htdocs\DataDumper\datadumper\test.php on line 53
现在我知道这有一些事情要做用我查询xpath的方式或者其他方法,我尝试了各种组合方式,例如为查询添加*斜杠,但每次都会出现相同的错误。
我的印象中OP不知道子元素的标签名称在这种情况下, ,这只适用于''子女 –
Phil
实际的XML有命名空间,这就是为什么我在这里添加它。另外我不能做/条件/正常,因为正常不是静态的,它可以改变,但我改变它/条件/ *,它的工作原理!谢谢 – swordfish