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_Flame(Version:Progress)的原代码
Oct 09 PHP
php 上一篇,下一篇文章实现代码与原理说明
May 09 PHP
PHP 反向排序和随机排序代码
Jun 30 PHP
PHP curl模拟浏览器采集阿里巴巴的实现代码
Apr 20 PHP
如何使用PHP计算上一个月的今天
May 23 PHP
zend Framework中的Layout(模块化得布局)详解
Jun 28 PHP
PHP+shell实现多线程的方法
Jul 01 PHP
php利用gd库为图片添加水印
Nov 09 PHP
Yii2中添加全局函数的方法分析
May 04 PHP
php实现的pdo公共类定义与用法示例
Jul 19 PHP
PHP自动生成缩略图函数的源码示例
Mar 18 PHP
laravel5.0在linux下解决.htaccess无效和去除index.php的问题
Oct 16 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
php array_unique之后json_encode需要注意
2011/01/02 PHP
LotusPhp笔记之:Logger组件的使用方法
2013/05/06 PHP
laravel与thinkphp之间的区别与优缺点
2021/03/02 PHP
去除链接虚线全面分析总结
2006/08/15 Javascript
javascript之锁定表格栏位
2007/06/29 Javascript
JS解析XML的实现代码
2009/11/12 Javascript
js下关于onmouseout、事件冒泡的问题经验小结
2010/12/09 Javascript
关于JS中的闭包浅谈
2013/08/23 Javascript
完美解决AJAX跨域问题
2013/11/01 Javascript
javascript实现在下拉列表中显示多级树形菜单的方法
2015/08/12 Javascript
jQuery实现默认是闭合的FAQ展开效果菜单
2015/09/14 Javascript
jQuery防止重复绑定事件的解决方法
2016/05/14 Javascript
Vue.js组件tabs实现选项卡切换效果
2016/12/01 Javascript
jQuery插件jquery.kxbdmarquee.js实现无缝滚动效果
2017/02/15 Javascript
Bootstrap DateTime Picker日历控件简单应用
2017/03/25 Javascript
JavaScript实现获取远程的html到当前页面中
2017/03/26 Javascript
jquery基于layui实现二级联动下拉选择(省份城市选择)
2017/06/20 jQuery
js实现登录注册框手机号和验证码校验(前端部分)
2017/09/28 Javascript
vue 实现在函数中触发路由跳转的示例
2018/09/01 Javascript
BP神经网络原理及Python实现代码
2018/12/18 Python
python关于变量名的基础知识点
2020/03/03 Python
Python使用tkinter实现摇骰子小游戏功能的代码
2020/07/02 Python
python中绕过反爬虫的方法总结
2020/11/25 Python
HTML5实现多张图片上传功能
2016/03/11 HTML / CSS
亚瑟士美国官网:ASICS美国
2017/02/01 全球购物
澳大利亚最大的百货公司:Myer
2018/12/21 全球购物
英国领先的在线礼品店:Getting Personal
2019/09/24 全球购物
应届毕业生个人求职信范文
2014/01/29 职场文书
爸爸的花儿落了教学反思
2014/02/20 职场文书
运动会宣传口号
2014/06/09 职场文书
以幸福为主题的活动方案
2014/08/22 职场文书
关于成绩下滑的自我检讨书
2014/09/20 职场文书
党员对照检查材料整改措施思想汇报
2014/09/26 职场文书
2015年九一八事变纪念活动实施方案
2015/05/06 职场文书
《全神贯注》教学反思
2016/02/22 职场文书
pytorch 权重weight 与 梯度grad 可视化操作
2021/06/05 Python