How to delete a SimpleXMLElement?
本问题已经有最佳答案,请猛点这里访问。
我之前就发布过一个关于如何计算属性值的问题。 即使我确定无法删除具有此属性的元素。 我尝试搜索,但仍然找不到正确的工作答案。 我真的希望你能帮助我。 这是我的代码。 我通过xml文档寻找属性值,然后尝试删除具有该属性值的节点的父节点。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | $xml = new SimpleXMLElement($xmlfile,0,true); $results = $xml->xpath("/presets/preset"); foreach ($results as $result) { foreach ($result->children() as $second_gen) { if($second_gen->getName()=='name'){ foreach($second_gen->attributes() as $a => $b) { if($b==$preset_name){ echo($b); echo($preset_name); unset($result); } } } } } $xml->asXML(); |
执行此代码的结果是我没有错误,并且回显了正确的
我的xml文件如下所示:
1 2 3 4 5 6 7 8 9 10 11 12 13 | [cc lang="php"] [cc lang="php"] <name code="default">Default</name> <createdBy>p</createdBy> <icons>q</icons> </preset> [cc lang="php"] <name code="new_preset">New Preset</name> <createdBy>x</createdBy> <icons>y</icons> </preset> ... </presets> |
我没有使用SimpleXMLElement类就找到了一个简单的答案。 看看我完整的答案。
如何获取PHP中xml节点的attribute值?