php实现XML和数组的相互转化功能示例

yipeiwu_com7年前PHP代码库

本文实例讲述了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相关内容感兴趣的读者可查看本站专题:《PHP针对XML文件操作技巧总结》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《PHP错误与异常处理方法总结》、《PHP基本语法入门教程》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

相关文章

PHP基于timestamp和nonce实现的防止重放攻击方案分析

本文实例讲述了PHP基于timestamp和nonce实现的防止重放攻击方案。分享给大家供大家参考,具体如下: 以前总是通过timestamp来防止重放攻击,但是这样并不能保证每次请求都...

PHP+JavaScript实现无刷新上传图片

html文件代码 <!-- ajax文件上传开始 --> <script type="text/javascript" src="/imageupload/jque...

AJAX的使用方法详解

AJAX作为异步传输,局部刷新非常方便,用处很广! 首先,对于AJAX的使用有4步: 1.创建AJAX对象 var xmlHttp = new XMLHttpRequest(); 2.建...

php文件操作相关类实例

本文实例讲述了php文件操作相关类。分享给大家供大家参考。具体如下: <?php class file_dir { function check_exist($...

php基于mcrypt的加密解密实例

本文实例讲述了php基于mcrypt实现加密解密的方法。分享给大家供大家参考。具体实现方法如下: PHP中自带了相当多的加密的方法,这里我们来看一下mcrypt扩展的使用方式。也是在工作...