PHP simplexml读取子标记属性
我有一个如下所示的xmlPHP simplexml读取子标记属性,php,xml,simplexml,Php,Xml,Simplexml,我有一个如下所示的xml <y> <n> <n id='test1'></n> <n id='test2'></n> </n> </y> 但一旦出错 正在尝试获取非对象的属性 它应该是:$xml->n->n[0],它是一个数组。如果您print\r($xml),您可能会看到如下所示: SimpleXMLElement Object ( [n] => SimpleXMLE
<y>
<n>
<n id='test1'></n>
<n id='test2'></n>
</n>
</y>
但一旦出错
正在尝试获取非对象的属性
它应该是:
$xml->n->n[0]
,它是一个数组。如果您print\r($xml)
,您可能会看到如下所示:
SimpleXMLElement Object
(
[n] => SimpleXMLElement Object
(
[n] => Array
(
[0] => SimpleXMLElement Object
(
[@attributes] => Array
(
[id] => test1
)
)
[1] => SimpleXMLElement Object
(
[@attributes] => Array
(
[id] => test2
)
)
)
)
)
它应该是:
$xml->n->n[0]
,它是一个数组。如果您print\r($xml)
,您可能会看到如下所示:
SimpleXMLElement Object
(
[n] => SimpleXMLElement Object
(
[n] => Array
(
[0] => SimpleXMLElement Object
(
[@attributes] => Array
(
[id] => test1
)
)
[1] => SimpleXMLElement Object
(
[@attributes] => Array
(
[id] => test2
)
)
)
)
)
…不要忘记,
id
是一个节点属性,而不是节点值,因此您需要像这样获取它:echo$xml->n->n[0]['id']
…不要忘记,id
是一个节点属性,而不是节点值,所以您需要像这样获取它:echo$xml->n->n[0]['id']
。