Posted in PHP onJanuary 28, 2015
代码很简洁,功能也很简单实用,这里就不多废话了,直接奉上代码:
<?php class Reponse{ //private $result = array('code'=null,'message'=null,'data'=>null); /** * @desc 返回JSON格式 * @param int $code * @param string $message * @param array $data * return string */ public static function json($code,$message = null,$data = array()){ if(!is_numeric($code)){ return false; } $result = array( 'code'=>$code, 'message'=>$message, 'data'=>$data ); return json_encode($result); exit; } /** * @desc 返回xml格式数据 * @parma int $code 状态码 * @param string $message 提示 * @param array $data 数据 * return string */ public static function xml($code,$message = '',$data = array()){ if(!is_numeric($code)){ return false; } $result = array( 'code'=>$code, 'message'=>$message, 'data'=>$data ); $xml = ''; $xml .= "<?xml version='1.0' encoding='UTF-8'?>\n"; $xml .= "<root>\n"; $xml .= self::xmlEncode($result); $xml .= "</root>"; header("Content-Type:text/xml"); echo $xml; } public static function xmlEncode($result){ $xml = $attr =''; foreach($result as $key=>$val){ if(is_numeric($key)){ $attr = "id='{$key}'"; $key = "item{$key}"; } $xml .= "<{$key} {$attr}>"; $xml .= is_array($val) ? self::xmlEncode($val) : $val; $xml .= "</{$key}>\n"; } return $xml; } } $data = array( 'id'=>1, 'age'=>20, 'username'=>'tim', 'others'=>array(1,2,3), ); Reponse::xml(200,'success',$data); Reponse::json(200,'success',$data);
小伙伴们可以直接拿去使用,使用方法在代码的最下方:)
PHP实现返回JSON和XML的类分享
- Author -
hebedich声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@