PHP数组转XML函数:array2xml

<?php
 * 数组转XML函数
 * @author 979137@qq.com
 * @param array arr 要转换的数组 * @param stringitem 默认节点名称
 * @param object xml XML节点对象
 * @return string XML格式的字符串
 */
function array2xml(arr, item='item',xml=NULL) {
    is_null(xml) &&xml = new \SimpleXMLElement('<xml></xml>');
    foreach (arr askey=>val) {
        is_numeric(key) && key =item;
        if (is_array(val) || is_object(val)) {
            child =xml->addChild(key);
            array2xml(val, item,child);
        } elseif (is_numeric(val)) {child = xml->addChild(key, val);
        } else {child = xml->addChild(key);
            node = dom_import_simplexml(child);
            _val =node->ownerDocument->createCDATASection(val);node->appendChild(_val);
        }
    }
    returnxml->asXML();
}

Related post

微信公众号:程序员到架构师

最新文章

Return Top