头像

php数组和xml相互转换函数

来源:https://www.daimasucai.com/hanshu/6.html 代码素材管理员 2016-08-28浏览()

在开发中,我们经常会遇到数组与XML之间的互相转换,尤其在处理接口开发的时候经常用到,比如对方客户端POST一个XML格式的数据到服务器上,服务器上的程序要负责接收解析,还有需要将数据表数据以XML格式提供给第三方等等应用。

程序员,你不是一个人;网站开发QQ群:  在线充值,或联系QQ 3078847178直接充值

php数组和xml相互转换函数
分类:首页>>PHP/Mysql>>函数 阅读次数:
查看演示 下载次数: 3

手机扫码访问:

下载资源 下载积分: 0

PHP可以将数组转换成xml格式,简单的办法是遍历数组,然后将数组的key/value转换成xml节点,再直接echo输出了,如:

function arrayToXml($arr, $dom = 0, $item = 0) {

    if (!$dom) {

        $dom = new DOMDocument("1.0");

    }

    if (!$item) {

        $item = $dom - >createElement("root");

        $dom - >appendChild($item);

    }

    foreach($arr as $key = >$val) {

        $itemx = $dom - >createElement(is_string($key) ? $key: "item");

        $item - >appendChild($itemx);

        if (!is_array($val)) {

            $text = $dom - >createTextNode($val);

            $itemx - >appendChild($text);

        } else {

            arrayToXml($val, $dom, $itemx);

        }

    }

    return $dom - >saveXML();

}

function arrayToXml2($arr) {

    $xml = "<xml>";

    foreach($arr as $key = >$val) {

        if (is_array($val)) {

            $xml. = "<".$key.">".arrayToXml($val)."</".$key.">";

        } else {

            $xml. = "<".$key.">".$val."</".$key.">";

        }

    }

    $xml. = "</xml>";

    return $xml;

}


//将XML转为array 

function xmlToArray($xml) {

    //禁止引用外部xml实体 

    libxml_disable_entity_loader(true);

    $xmlstring = simplexml_load_string($xml, 'SimpleXMLElement', LIBXML_NOCDATA);

    $val = json_decode(json_encode($xmlstring), true);

    return $val;

}


标签: xml
声明:本文为原创文章,如需转载,请注明来源daimasucai.com并保留原文链接:https://www.daimasucai.com/hanshu/6.html
如果您觉得本文的内容对您的学习有所帮助,您可以扫描下面的二维码请我喝杯茶,感谢!
alipay转账 alipay转账 扫扫加qq群

评论(0)


温馨提示:为规范评论内容,垃圾评论一律封号...

后面还有条评论,点击查看>>