json/xml interface data encapsulation

/* xml encapsulation interface data method*/
// 1. PHP generates xml data
//$dom = DOMDocument('1.0','utf-8');
//$element = $dom->createElement();
// 2. Assemble strings and concatenate strings
Class Response{
     /* Output communication data in json format
     *@param $code status code
     *@param $message prompt information
     *@param array $data data
     *@return string
     * */
    public static function json($code,$message = '',$data = array())
    {
             if(!is_numberic($code)){
                 return '';
             }
             $result = array(
                 'code' => $code,
                 'message' => $message,
                 'data' => $data,
             );
             return json_encode($result);
             exit;
    }
    public static function xml()
    {
        $xml = "<?xml version='1.0' encoding='utf-8'?>\n";
        $xml .= "<root>\n";
        $xml .="<code>200</code>\n";
        $xml .= "<message>数据返回成功</message>\n";
        $xml .= "<data>\n";
        $xml .= "<id>1</id>\n";
        $xml .= "<name>shibin</name>\n";
        $xml .="</data>\n";
        $xml .= "</root>\n"; // 1. PHP generates xml data /* xml encapsulates interface data method*/  }     }


         return $xml;










//$dom = DOMDocument('1.0','utf-8');
//$element = $dom->createElement();
//2. Assemble strings and concatenate strings
Class Response{
     /* Output in json mode Communication data
     *@param $code status code
     *@param $message prompt information
     *@param array $data data
     *@return string
     * */
    public static function json($code,$message = '',$data = array() )
    {
             if(!is_numberic($code)){
                 return '';
             }
             $result = array(
                 'code' => $code,
                 'message' => $message,
                 'data' => $data,
             );
             return json_encode($result);
             exit;
    }
    public static function xml()
    {
        $xml = "<?xml version='1.0' encoding='utf-8'?>\n";
        $xml .= "<root>\n";
        $xml .="<code>200</code>\n";
        $xml .= "<message>数据返回成功</message>\n";
        $xml .= "<data>\n";
        $xml .= "<id>1</id>\n";
        $xml .= "<name>shibin</name>\n";
        $xml .="</data>\n";
        $xml .= "</root>\n";


         return  $xml;
    }
     public static function xmlToEncode($data){
           $xml = $attr = '';
           foreach($data as $key=>$value){
            if(is_numberic($key)){
                $attr = "id = '{$key}'";
                $key = $item;
            }
            $xml . "<{$key}{$attr}>\n";
            $xml .= is_array($value)?self::xmlToEncode($value):$value; //If $value is an array, call the function recursively, otherwise the output can be
            $xml .="</{$key}>\n ";
           }


           return $xml;
   }
     /*Integrated communication method*/
        const JSON = 'json';
    public static function show($code,$message = '',$data = array(),$type = self:: JSON){
          if(!is_numberic($code)){
            return '';
          }


          $type = isset($_GET[' format']) ? $_GET['format'] :self::JSON;


          $result = array(
            'code'=>$code,
            'message'=>$message,
            'data'=>$data
            );


          if($type == 'json'){
            self::json($code,$message,$data);
            exit;
          }elseif($type == 'array'){
            return $result;
          }elseif($type == 'xml'){
            self::XmlEncode($code,$message,$data);
          }else{
            //后续的HTML,等数据
          }
    }


 }


 $data = array(
    'id' => 1,
    'name' => 'shibin',
    'type'=> array(4,5,6),//  key值0,1,2,作为标签了, <0>4</0> ->  <item id='0'>4</0>
     'test'=> array(1,45,67=>array(123,'test'),)
    );
 Response::XmlEncode(200,'success',$data);

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=325526423&siteId=291194637