Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/262.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用SimpleXML在PHP中重新排列XML节点?_Php_Xml_Simplexml - Fatal编程技术网

如何使用SimpleXML在PHP中重新排列XML节点?

如何使用SimpleXML在PHP中重新排列XML节点?,php,xml,simplexml,Php,Xml,Simplexml,我想重新排列文件中的元素,我不想为元素排序/排列使用其他属性。我认为最好使用扩展名,而不是SimpleXML。据我所知,SimpleXML不允许您轻松地将更改保存回文件(至少在不使用DOM的情况下) 对要移动的DOMNode有引用后,可以先将其删除: $node = $node->parentNode->removeChild($node); 然后将其放在另一个节点之前: $node = $otherNode->insertBefore($node); 这可能不是一个足够详

我想重新排列文件中的元素,我不想为元素排序/排列使用其他属性。

我认为最好使用扩展名,而不是SimpleXML。据我所知,SimpleXML不允许您轻松地将更改保存回文件(至少在不使用DOM的情况下)

对要移动的DOMNode有引用后,可以先将其删除:

$node = $node->parentNode->removeChild($node);
然后将其放在另一个节点之前:

$node = $otherNode->insertBefore($node);
这可能不是一个足够详细的答案-请您添加一些关于您正试图实现的目标的详细信息?

我只想在一个级别中重新排列(上移或下移,或按特定顺序)节点。但是你的回答已经解决了我的问题,非常感谢D