首页  >  文章  >  后端开发  >  PHP实现返回JSON和XML的类分享_php技巧

PHP实现返回JSON和XML的类分享_php技巧

WBOY
WBOY原创
2016-05-16 20:24:22968浏览

代码很简洁,功能也很简单实用,这里就不多废话了,直接奉上代码:

复制代码 代码如下:

    类响应{
        //private $result = array('code'=null,'message'=null,'data'=>null);
        /**
         * @desc 返回JSON格式
         * @param int $code
         * @param string $message
         * @param array  $data
         * return string
        */
        公共静态函数 json($code,$message = null,$data = array()){
            if(!is_numeric($code)){
                返回错误;
            }
            $结果 = 数组(
                '代码'=>$代码,
                '消息'=>$消息,
                '数据'=>$数据
            );
            返回 json_encode($结果);
            退出;
        }
        /**
         * @desc 返回xml格式数据
         * @parma int $code 状态码
         * @param string $message 提示
         * @param array $data 数据
         * return string
        */
         公共静态函数 xml($code,$message = '',$data = array()){
            if(!is_numeric($code)){
                返回错误;
            }
            $结果 = 数组(
                '代码'=>$代码,
                '消息'=>$消息,
                '数据'=>$数据
            );
            $xml = '';
            $xml .= "n";
            $xml .= "n";
            $xml .= self::xmlEncode($result);
            $xml .= "
";
            header("Content-Type:text/xml");
            回显 $xml;
         }
         公共静态函数 xmlEncode($result){
            $xml = $attr ='';
            foreach($结果为$key=>$val){
                if(is_numeric($key)){
                    $attr = "id='{$key}'";
                    $key = "item{$key}";
                }
                $xml .= "<{$key} {$attr}>";
                $xml .= is_array($val) ? self::xmlEncode($val) : $val;
                $xml .= "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);

小伙伴们可以直接拿去使用,使用方法在代码的最下方:)

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn