0

我一直在拉我的头发,我真的希望我能得到一些帮助。提前致谢!

我有一个 SimpleXML 对象,它是这样的:

Object
(
|    SomeStuff Object
|    (
|    )
|    Entries Object
|    (
|    |    Entry Object
|    |    (
|    |    |    SomeMoreStuff Object
|    |    |    (
|    |    |    )
|    |    |    ImportantStuff Object
|    |    |    (
|    |    |    |    W1 Object
|    |    |    |    (
|    |    |    |    |    D1 Object
|    |    |    |    |    (
|    |    |    |    |    )
|    |    |    |    |    D2 Object
|    |    |    |    W2 Object
|    |    |    |    (
|    |    |    |    |    D1 Object
|    |    |    |    |    (
|    |    |    |    |    )
|    |    |    |    |    D2 Object

...等。出于某种原因,使用以下代码会产生意想不到的结果:

foreach($xml->Entries->Entry->ImportantStuff as $key => $value) {
   echo "$key, $value";
}

只是输出ImportantStuff,而不是每个D#. 在另一种情况下,我有一个对象,其中 ImportantStuff 的每个成员都有相同的名称,在这种情况下,我使用$xml->ImportantStuff->ImportantThing,它返回所有ImportantThings。在重要事物具有不同名称的情况下,我该如何模拟呢?

4

1 回答 1

2

使用 simplexml 你需要像这样进行 foreach

foreach($xml->Entries->Entry->ImportantStuff->children() as $key => $value) { echo "$key, $value"; }

于 2012-10-06T08:33:21.650 回答