全部,
我有一个看起来像这样的 XML 文档:
<root>
<profile>
<childA>
<childB>
<childC>
<profile>
<blah>
<blah>
<foo>
<bar>
<root>
Run Code Online (Sandbox Code Playgroud)
我希望能够获取“profile”节点,然后遍历它的子节点(“childA”、“childB”等)
到目前为止,我的代码如下所示:
$doc = new DomDocument();
$doc->loadXML(file_get_contents("php://input"));
$profile_node = $doc->getElementsByTagName("profile")->item(0);
Run Code Online (Sandbox Code Playgroud)
到现在为止还挺好。$profile_node 有我想要的。
在 PHP4 中,我猜你会做这样的事情:
$childnodes = $profile_node->child_nodes();
foreach ($childnodes as $node) {
// do something with this node
}
Run Code Online (Sandbox Code Playgroud)
但是,我在 PHP5 中找不到 child_nodes() 的等价物。
由于我对 PHP 几乎是一个菜鸟,因此我非常感谢代码示例,因此我可以看到确切的语法。
根据php 手册,DomNode 类有一个公共 $childNodes 变量。您可以直接访问它:
foreach ($profile_node->childNodes as $node) {
// do something with this node
}
Run Code Online (Sandbox Code Playgroud)