如何使用PHP/SimpleXML更改XML标记的名称?
使用SimpleXML,可以通过键入例如如何使用PHP/SimpleXML更改XML标记的名称?,php,xml,simplexml,Php,Xml,Simplexml,使用SimpleXML,可以通过键入例如 $child->addAttribute('n', $occ_order); 有没有办法改变$child元素的名称?我期待着类似的事情 $child->setName('newTagName'); 但是我在API中找不到相应的函数 提前感谢您的提示 从文档[1]中可以看出,您不能。如果你也可以的话,那会有点奇怪-更改名称会使它成为一个不同的/新的元素。您要做的是删除该元素并在同一位置添加一个新元素。然而,虽然有addChild方法,但它看
$child->addAttribute('n', $occ_order);
有没有办法改变$child元素的名称?我期待着类似的事情
$child->setName('newTagName');
但是我在API中找不到相应的函数
提前感谢您的提示 从文档[1]中可以看出,您不能。如果你也可以的话,那会有点奇怪-更改名称会使它成为一个不同的/新的元素。您要做的是删除该元素并在同一位置添加一个新元素。然而,虽然有addChild方法,但它看起来不像是delete方法。因此,simpleXML在这里可能不是合适的工具 编辑:simpleXML确实不提供删除方法。有关如何执行此操作的信息,请参阅此答案[2] 一,
2如果您确切知道它的位置,您可以使用
unset()
删除它,即$main->target
将作为unset($main->target)
删除,并使用addchild()
再次添加它,即$main->addchild(名称、值)
,顺便说一句,可能的重复项,如果希望将其作为变量返回,即$var,则需要使用$var=$main->asXML();