SimpleXML和封闭数组的问题

时间:2010-10-22 21:51:58

标签: php xml simplexml

我遇到SIMPLE XML问题。我似乎有一个倾倒整个对象的数组。但是,当我尝试访问该数组时,我得到了该数组的单个元素。

这是完整转储:

SimpleXMLElement Object
(
    [@attributes] => Array
        (
            [type] => array
        )

    [person] => Array
        (
            [0] => SimpleXMLElement Object
                (
                 ..........................
                ),
            [1] => SimpleXMLElement Object
                (
                 ..........................
                )
        )
)

当我尝试通过$ xml-> person访问person数组时,我得到第一个元素,而不是获取数组。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

从PHP手册中的SimpleXML Basic usage文档:

  

注意:属性(上例中的$xml->movie)不是数组。它们是iterableaccessible个对象。

因此,在您的情况下,$xml->person实际上不是一个数组,只是一个可迭代的对象。它可以很容易地转换为数组:

$persons = array();
foreach ($xml->person as $person) {
    $persons[] = $person;
}