php – SimpleXML如何在节点中添加一个子节点?

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了php – SimpleXML如何在节点中添加一个子节点?脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
当我打电话

addChild(‘actor’,’John Doe’);

这个孩子在最后添加.有没有办法让这个新孩子成为第一个孩子?

正如已经提到的那样,Simple XML不支持,所以你必须使用DOM.这是我建议的:扩展SimpleXMLElement与您需要在程序中使用的任何东西.这样,您可以将所有DOM操作和其他XML保留在您的实际程序之外.通过将这两个问题保持分开,可以提高可读性和可维护性.

以下是使用新方法PRePEndChild()扩展SimpleXMLElement的方法

class my_node extends SimpleXMLElement
{
    public function prependChild($name,$value)
    {
        $dom = dom_import_simplexml($this);

        $new = $dom->insertBefore(
            $dom->ownerDocument->createElement($name,$value),$dom->FirstChild
        );

        return simplexml_import_dom($new,get_class($this));
    }
}

$actors = simplexml_load_string(
    '<actors>
        <actor>Al Pacino</actor>
        <actor>Zsa Zsa Gabor</actor>
    </actors>','my_node'
);

$actors->addChild('actor','John Doe - last');
$actors->prependChild('actor','John Doe - first');

die($actors->asXML());

脚本宝典总结

以上是脚本宝典为你收集整理的php – SimpleXML如何在节点中添加一个子节点?全部内容,希望文章能够帮你解决php – SimpleXML如何在节点中添加一个子节点?所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。