数组/XML 互转函数

2018-09-10 14:25:41 阅读量:1149,日阅读:2,周阅读:8,月阅读:22 0条
/**
 * 数组转XML
 * @param array $arr
 * @return string
 */
function arrayToXml($arr)
{
    $xml = '<xml>';
    foreach ($arr as $key => $val) {
        if (is_numeric($val)) {
            $xml .= "<" . $key . ">" . $val . "</" . $key . ">";
        } else {
            $xml .= "<" . $key . "><![CDATA[" . $val . "]]></" . $key . ">";
        }
    }
    $xml .= "</xml>";
    return $xml;
}
/**
 * 将XML转为array
 * @param string $xml
 * @return 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;
}
标签: PHP 数组 函数

非特殊说明,本博所有文章均为博主原创。

请使用[QQ登录]后进行评论