欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

xml方式封装数据方法

程序员文章站 2022-06-22 17:28:27
1.xml方式封装数据方法 2.demo 运行结果: ......

1.xml方式封装数据方法

xml方式封装数据方法

2.demo

<?php
xml方式封装数据方法
/**
 * [xmlEncode description]
 * @param  [type] $code    [description]
 * @param  [type] $message [description]
 * @param  array  $data    [description]
 * @return [type]          [description]
 */
public static function xmlEncode($code,$message,$data= array()){
    if(!is_numeric($code)){
        return;
    }    
    $result = array(
        'code'=>$code,
        'message'=>$message,
        'data'=>$data,
        );
    header("Content-Type:text/html");
    $xml ="<?xml version='1.0' encoding='UTF-8'>";
    $xml .="<root>";
    $xml .=self::xmlToEncode($result);
    $xml .="</root>";

 echo $xml;
}


public static function xmlToEncode($data){
    $xml = $attr "";
    foreach ($data as $key => $value) {
        //xml的节点不能为数字,如果传默认数组需要处理下标值
        if(is_numeric($key)){
            $attr = "id='{$key}'";
            $key = "item";
        }
        $xml .="<{$key}>";    
        $xml .=is_array($value)?self::xmlToEncode($value):$value;    
        $xml .="</{$key}>";    
    }
    return $xml;

}
$data = array(
    'id'=>1,
    'name'=>'xinlang',
    'type'=>array(),
    );
Response::xmlEncode(200,'success',$data);


//注意 xml的节点不能为数字,如果传默认数组需要处理下标值
<item id="0"></item>

运行结果:

xml方式封装数据方法