// 此类仅供参考 如有错误 请留言提示 <?php Class Response{ const JSON='json'; /* * 按综合方式输出通信数据 * @param int code 状态码 * @param array data 数据 * @param string type 数据类型 * @param string message 信息 * return string */ public static function show($code,$message='',$data=array(),$type) { if(!is_numeric($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='',$result); exit; }elseif($type=='array'){ var_dump($result); //调试模式 }elseif($type=='xml'){ self::xml($code,$message='',$result); exit; }else{ //ToDo } } /* * 按json方式输出通信数据 * @param int code 状态码 * @param array data 数据 * @param string type 数据类型 * @param string message 信息 * return string */ public static function json($code,$message='',$data=array()) { if(!is_numeric($code)){ return ''; } $result = array( 'code'=>$code, 'message'=>$message, 'data'=>$data ); /*echo json_encode($result); exit;*/ return json_encode($result); } /* * 按xml方式输出通信数据 * @param int code 状态码 * @param array data 数据 * @param string type 数据类型 * @param string message 信息 * 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'?>"; $xml.="<root>"; $xml.=self::toxml($result); $xml.="</root>"; /* echo $xml; exit;*/ return $xml; } /* * 为xml服务的方法 */ public static function toxml($data) { $xml = $attr = ''; foreach($data as $key=>$value) { if(is_numeric($key)){ $attr ="id='{$key}'"; $key = "item"; } $xml .= "<{$key} {$attr}>"; $xml.=is_array($value)?self::toxml($value):$value; $xml .= "</{$key}>"; } return $xml; } }
接口 xml json 数据的封装类
最新推荐文章于 2022-07-12 15:46:05 发布