首页 > 代码库 > PHP返回JSON和XML类

PHP返回JSON和XML类

 1 <?php 2     class Reponse{ 3         //private $result = array(‘code‘=null,‘message‘=null,‘data‘=>null); 4         /** 5          * @desc 返回JSON格式 6          * @param int $code  7          * @param string $message  8          * @param array  $data 9          * return string10          */11         public static function json($code,$message = null,$data = array()){12             if(!is_numeric($code)){13                 return false;14             }15             $result = array(16                 ‘code‘=>$code,17                 ‘message‘=>$message,18                 ‘data‘=>$data19             );20             return json_encode($result);21             exit;22         }23         24         /**25          * @desc 返回xml格式数据26          * @parma int $code 状态码27          * @param string $message 提示28          * @param array $data 数据29          * return string 30          */31          public static function xml($code,$message = ‘‘,$data = array()){32             if(!is_numeric($code)){33                 return false;34             }35             $result = array(36                 ‘code‘=>$code,37                 ‘message‘=>$message,38                 ‘data‘=>$data39             );40             $xml = ‘‘;41             42             $xml .= "<?xml version=‘1.0‘ encoding=‘UTF-8‘?>\n";43             $xml .= "<root>\n";44             $xml .= self::xmlEncode($result);45             $xml .= "</root>";46             header("Content-Type:text/xml");47             echo $xml;48 49          }50          51          public static function xmlEncode($result){52             $xml = $attr =‘‘;53             foreach($result as $key=>$val){54                 if(is_numeric($key)){55                     $attr = "id=‘{$key}‘";56                     $key = "item{$key}";57                 }58                 $xml .= "<{$key} {$attr}>";59                 60                 $xml .= is_array($val) ? self::xmlEncode($val) : $val;61             62                 $xml .= "</{$key}>\n";63             }64          65             return $xml;66          67          }68          69     }70     71     $data = array(72         ‘id‘=>1,73         ‘age‘=>20,74         ‘username‘=>‘tim‘,75         ‘others‘=>array(1,2,3),76     );77     Reponse::xml(200,‘success‘,$data);78     Reponse::json(200,‘success‘,$data);

 

PHP返回JSON和XML类