PHP实现Xml和数组的相互转化功能示例有什么?
PHP实现Xml和数组的相互转化功能示例有什么?
本文实例讲述了php实现XML和数组的相互转化功能。分享给大家供大家参考,具体如下:
数组转化为xml:
function arrtoxml($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 { arrtoxml($val,$dom,$itemx); } } return $dom->saveXML(); }
xml转化为数组:
function xmltoarr($path){ $xmlfile = file_get_contents($path);//提取xml文档中的内容以字符串格式赋给变量 $ob= simplexml_load_string($xmlfile);//将字符串转化为变量 $json = json_encode($ob);//将对象转化为JSON格式的字符串 $configData = json_decode($json, true);//将JSON格式的字符串转化为数组 print_r($configData); }
PS:这里再为大家提供几款关于xml操作的在线工具供大家参考使用:
在线XML/JSON互相转换工具:
http://tools.jb51.net/code/xmljson
在线格式化XML/在线压缩XML:
http://tools.jb51.net/code/xmlformat
XML在线压缩/格式化工具:
http://tools.jb51.net/code/xml_format_compress
XML代码在线格式化美化工具:
http://tools.jb51.net/code/xmlcodeformat
希望本文所述对大家PHP程序设计有所帮助。