PHP生成json和xml类型接口数据格式

php生成接口通信数据

  /**   * 生成接口数据格式   */  class Response{    /**     * [show 按综合方式输出数据]     * @param [int] $code    [状态码]     * @param [string] $message [提示信息]     * @param array $data  [数据]     * @param [string] $type [类型]     * @return [string]    [返回值]     */    public static function show($code, $message, $data = array(),$type = ''){      if(!is_numeric($code)){        return '';      }      $result = array(        'code' => $code,        'message' => $message,        'data' => $data      );      if($type == 'json'){        return self::json($code, $message, $data);      }elseif($type == 'xml'){        return self::xml($code, $message, $data);      }else{        //TODO      }    }    /**     * [json 按json方式输出数据]     * @param [int] $code    [状态码]     * @param [string] $message [提示信息]     * @param [array] $data  [数据]     * @return [string]     [返回值]     */    public static function json($code, $message, $data = array()){      if(!is_numeric($code)){        return '';      }      $result = array(        'code' => $code,        'message' => $message,        'data' => $data      );      $result = json_encode($result);      return $result;    }       /**     * [xml 按xml格式生成数据]     * @param [int] $code    [状态码]     * @param [string] $message [提示信息]     * @param array $data   [数据]     * @return [string]     [返回值]     */    public static function xml($code, $message, $data = array()){      if(!is_numeric($code)){        return '';      }      $result = array(        'code' => $code,        'message' => $message,        'data' => $data      );      header("Content-Type:text/xml");      $xml = "<?xml version='1.0' encoding='UTF-8'?>n";      $xml .= "<root>n";      $xml .= self::xmlToEncode($data);      $xml .= "</root>";      return $xml;    }       public static function xmlToEncode($data){      $xml = '';      foreach($data as $key => $value){        if(is_numeric($key)){          $attr = "id='{$key}'";          $key = "item";        }        $xml .= "<{$key} {$attr}>n";        $xml .= is_array($value) ? self::xmlToEncode($value) : "{$value}n";        $xml .= "</{$key}>n";      }      return $xml;    }  }     //测试  $grade = array("score" => array(70, 95, 70.0, 60, "70"), "name" => array("Zhang San", "Li Si", "Wang Wu", "Zhao Liu", "TianQi"));  $response = new Response();  $result = $response :: show(200,'success',$grade,'json');  print_r($result);  

以上所述就是本文的全部内容了,希望大家能够喜欢。

PHP生成json和xml类型接口数据格式

郑重声明:本网站发布的内容(图片、视频和文字)以及用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服

发表评论

登录后才能评论