数组和xml的互相转换的封装函数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数组和xml的互相转换的封装函数相关的知识,希望对你有一定的参考价值。

/**
* 数组转换为xml
*
* @param array $arr
* @param int $level
* @return string
*/
public static function arrayToXml($arr, $level = 0) {
  $s = $level == 0 ? ‘<?xml version="1.0" encoding="UTF-8"?>‘ : ‘‘;
  foreach ( $arr as $key => $value ) {
    if (is_array ( $value )) {
      $s .= "<" . $key . ">" . ArrayXML::arrayToXml ( $value, 1 ) . "</" . $key . ">";
    } else {
      $s .= "<" . $key . ">" . $value . "</" . $key . ">";
    }
  }
  return $s;
}

 

 

/**
* xml转为数组
*
* @param string $xml
* @param string $version
* @param string $charset
* @return array
*/
public static function xmlToarray($xml, $version = "1.0", $charset = "utf-8") {
  $doc = new DOMDocument ( $version, $charset );
  $doc->loadXML ( $xml );
  $result = domNodeToArray($doc);
  if (isset ( $result [‘#document‘] )) {
    $result = $result [‘#document‘];
  }
  return $result;
 }

以上是关于数组和xml的互相转换的封装函数的主要内容,如果未能解决你的问题,请参考以下文章

PHP中XML和数组互相转换的方法

int数组与String数组互相转换和函数互相转换

图片和base64编码字符串 互相转换,图片和byte数组互相转换

IOS开发之----NSDictionary,JSON和XML互相转换

Java xml和json互相转换方法

c#中 xml和json 互相转换