php 怎么将数组转xml的函数

 我来答
珍珍520402
2016-12-02 · TA获得超过1353个赞
知道小有建树答主
回答量:602
采纳率:75%
帮助的人:234万
展开全部
没有现成函数,只能自己写;我有一个别人写的函数:
<?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);
百度网友7e1fe7c
2016-12-02 · TA获得超过221个赞
知道小有建树答主
回答量:205
采纳率:0%
帮助的人:89.9万
展开全部
php没有现成的函数,只能自己遍历数组再去拼xml
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
头发为凌乱
2016-12-02
知道答主
回答量:31
采纳率:0%
帮助的人:15.4万
展开全部
<?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);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Champion水龙果
2018-04-25
知道答主
回答量:9
采纳率:100%
帮助的人:2.3万
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式