数组拼接成xml
/**
* map 转 xml
* @param $map
* @return string
*/
private function MapConvertXML($map) {
if(!is_array($map) || count($map) <= 0) {
throw new RuntimeException('数据异常!');
}
$XML = '<xml>';
foreach ($map as $key=>$val) {
if (is_numeric($val)){
$XML.='<'.$key.'>'.$val.'</'.$key.'>';
}else{
$XML.='<'.$key.'><![CDATA['.$val.']]></'.$key.'>';
}
}
$XML.='</xml>';
return $XML;
}
$map就是需要进行处理的数组
xml解析成数组
private function XMLConvertMap($xml) {
if(!$xml) {
throw new RuntimeException('xml 数据异常转换失败!!');
}
$map = array();
libxml_disable_entity_loader(true);
$map = json_decode(json_encode(simplexml_load_string($xml, 'SimpleXMLElement', LIBXML_NOCDATA)), true);
// var_dump($map);
return $map;
}