php实现将数组转换为XML的方法


本文实例讲述了php实现将数组转换为XML的方法。分享给大家供大家参考。具体如下:

1. php代码如下:

<?php
class A2Xml {
  private $version  = '1.0';
  private $encoding  = 'UTF-8';
  private $root    = 'root';
  private $xml    = null;
  function __construct() {
    $this->xml = new XmlWriter();
  }
  function toXml($data, $eIsArray=FALSE) {
    if(!$eIsArray) {
      $this->xml->openMemory();
      $this->xml->startDocument($this->version, $this->encoding);
      $this->xml->startElement($this->root);
    }
    foreach($data as $key => $value){
 
      if(is_array($value)){
        $this->xml->startElement($key);
        $this->toXml($value, TRUE);
        $this->xml->endElement();
        continue;
      }
      $this->xml->writeElement($key, $value);
    }
    if(!$eIsArray) {
      $this->xml->endElement();
      return $this->xml->outputMemory(true);
    }
  }
}
$res = array(
  'hello' => '11212',
  'world' => '232323',
  'array' => array(
    'test' => 'test',
    'b'  => array('c'=>'c', 'd'=>'d')
  ),
  'a' => 'haha'
);
$xml = new A2Xml();
echo $xml->toXml($res);

2. 运行效果如下图所示:

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


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3