读取XML并在PHP中存储到数组

时间:2011-08-11 09:01:51

标签: php xml arrays

我有这个:

$xml = simplexml_load_file('test.xml');
print"<pre>";
print_r($xml);

打印出来:

SimpleXMLElement Object
(
    [b] => SimpleXMLElement Object
        (
            [c] => SimpleXMLElement Object
                (
                    [d] => 543
                )

        )

)

但是当我输入echo $xml["b"]["c"]["d"];时没有任何事情发生

2 个答案:

答案 0 :(得分:4)

print_r有点误导,
实际上$xml是SimpleXmlElement对象的系列/数组

所以

echo (int)$xml->b->c->d;  --- type casting is required

这里有一些reference你应该先看看

type casting的附加内容,
因为xml对象中的所有节点都是stringint

PHP会自动将数字字符串转换为整数,
但是,如果您提供类型提示

,则更清楚
var_dump($xml); --- you should see more information on the data type

答案 1 :(得分:0)

尝试echo $xml->b->c->d;

$ xml不是数组,它们是对象。