本文分享一下PHP下数组与XML字符串之间相互转换的方法,欢迎大家参考。
/***数组转换为xml字符串**
paramarray$arr要转换的数组[key=value]键值对*returnstring*/publicfunctionarrayToXml($arr){$xml="xml";foreach($arras$key=$val){if(is_numeric($val)){$xml.="".$key."".$val."/".$key."";}else$xml.="".$key."![CDATA[".$val."]]/".$key."";}$xml.="/xml";return$xml;}/***xml字符串转为数组**paramstring$xml要转换的XML字符串*returnarray*/publicfunctionxmlToArray($xml){//先用simplexml_load_string函数转换xml字符串为对象,再把对象转换为JSON字符串,最后再转换JSON字符串为数组//LIBXML_NOCDATA-将CDATA设置为文本节点$array_data=json_decode(json_encode(simplexml_load_string($xml,SimpleXMLElement,LIBXML_NOCDATA)),true);return$array_data;}