【发布时间】:2012-03-14 00:00:08
【问题描述】:
我必须使用 DOM 操作 XML 文件
这是我的情况:
<mainnode>
<node1 name="aaa">
<subnode name="123456" />
</node1>
<node1 name="bbb">
<subnode name="28472" />
</node1>
<node1 name="aaa">
<subnode name="92328" />
</node1>
<node1 name="ccc">
<subnode name="53554" />
</node1>
<node1 name="ccc">
<subnode name="01928" />
</node1>
<node1 name="aaa">
<subnode name="39576" />
</node1>
<node1 name="ddd">
<subnode name="66666" />
</node1>
</mainnode>
我想将读取<node1>中“名称”属性的所有节点分组,以便为每个等于另一个“名称”的“名称”获得类似的东西:
<mainnode>
<node1 name="aaa">
<subnode name="123456" />
<subnode name="92328" />
<subnode name="39576" />
</node1>
<node1 name="bbb">
<subnode name="28472" />
</node1>
<node1 name="ccc">
<subnode name="53554" />
<subnode name="01928" />
</node1>
<node1 name="ddd">
<subnode name="66666" />
</node1>
</mainnode>
用 dom 进行这种操作的 php 代码是什么?有可能吗?
【问题讨论】:
-
有可能吗? 是的。进行这种操作的 php 代码是什么? php.net/manual/en/book.dom.php 。你试过什么?
-
XML 没有根节点
-
@gordon:添加了根节点,顺便说一句,我的代码只是为了举例
-
它仍然无效。子节点应为
<subnode/>或关闭</subnode>。即使它只是一个例子。如果您提供无效的 xml,那么您就是在为想要提供帮助的人增加障碍。 -
@rdlowrey 我尝试通过使用 getElementsByTagName 读取属性来读取节点,但我无法对所有不同的节点进行分组
标签: php xml dom dom-manipulation