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


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 相关文章推荐
php str_pad 函数用法简介
Jul 11 PHP
PHP+JS+rsa数据加密传输实现代码
Mar 23 PHP
php 判断访客是否为搜索引擎蜘蛛的函数代码
Jul 29 PHP
PHP中将网页导出为Word文档的代码
May 25 PHP
PHP常用的排序和查找算法
Aug 06 PHP
深入浅析php中sprintf与printf函数的用法及区别
Jan 08 PHP
CodeIgniter基于Email类发邮件的方法
Mar 29 PHP
php分页原理 分页代码 分页类制作教程
Sep 23 PHP
php实现微信扫码支付
Mar 26 PHP
PHP中Notice错误常见解决方法
Apr 28 PHP
php数据序列化测试实例详解
Aug 12 PHP
php屏蔽错误及提示的方法
May 10 PHP
PHP实现的下载远程图片自定义函数分享
Jan 28 #PHP
php+mysqli实现将数据库中一张表信息打印到表格里的方法
Jan 28 #PHP
php+mysqli使用预处理技术进行数据库查询的方法
Jan 28 #PHP
php中使用session防止用户非法登录后台的方法
Jan 27 #PHP
php中session与cookie的比较
Jan 27 #PHP
php实现session自定义会话处理器的方法
Jan 27 #PHP
php实现检查文章是否被百度收录
Jan 27 #PHP
You might like
mysql 中InnoDB和MyISAM的区别分析小结
2008/04/15 PHP
php 分库分表hash算法
2009/11/12 PHP
php修改文件上传限制方法汇总
2015/04/07 PHP
PHPExcel笔记, mpdf导出
2016/05/03 PHP
Yii2中使用asset压缩js,css文件的方法
2016/11/24 PHP
Referer原理与图片防盗链实现方法详解
2019/07/03 PHP
JavaScript 通过模式匹配实现重载
2010/08/12 Javascript
JQuery操作三大控件(下拉,单选,复选)的方法
2013/08/06 Javascript
如何让一个json文件显示在表格里【实现代码】
2016/05/09 Javascript
gulp-uglify 与gulp.watch()配合使用时报错(重复压缩问题)
2016/08/24 Javascript
Angular2 多级注入器详解及实例
2016/10/30 Javascript
JS简单实现移动端日历功能示例
2016/12/28 Javascript
JavaScript+Html5实现按钮复制文字到剪切板功能(手机网页兼容)
2017/03/30 Javascript
JS 设置Cookie 有效期 检测cookie
2017/06/15 Javascript
JS处理数据四舍五入(tofixed与round的区别详解)
2017/10/26 Javascript
浅谈Angular 中何时取消订阅
2017/11/22 Javascript
微信小程序使用modal组件弹出对话框功能示例
2017/11/29 Javascript
Vue中的$set的使用实例代码
2018/10/08 Javascript
js实现旋转木马轮播图效果
2020/01/10 Javascript
ckeditor一键排版功能实现方法分析
2020/02/06 Javascript
基于JavaScript实现十五拼图代码实例
2020/04/26 Javascript
vue elementui tree 任意级别拖拽功能代码
2020/08/31 Javascript
零基础写python爬虫之使用urllib2组件抓取网页内容
2014/11/04 Python
Python过滤列表用法实例分析
2016/04/29 Python
python3.4下django集成使用xadmin后台的方法
2017/08/15 Python
神经网络理论基础及Python实现详解
2017/12/15 Python
对python列表里的字典元素去重方法详解
2019/01/21 Python
解决python3输入的坑——input()
2020/12/05 Python
HTML5实现移动端复制功能
2018/04/19 HTML / CSS
应届生船舶驾驶求职信
2013/10/19 职场文书
商场经理竞聘演讲稿
2014/01/01 职场文书
优秀中学生事迹材料
2014/01/31 职场文书
老同学聚会感言
2014/02/23 职场文书
舞蹈专业大学生职业规划范文
2014/03/12 职场文书
部门经理助理岗位职责
2015/04/13 职场文书
Android Canvas绘制文字横纵向对齐
2022/06/05 Java/Android