前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >php封装json通信接口详解及实例

php封装json通信接口详解及实例

作者头像
Qicloud
发布2022-01-27 19:56:18
8870
发布2022-01-27 19:56:18
举报
文章被收录于专栏:七云博客七云博客

php创建JSON数据详解:

代码语言:javascript
复制
PHP复制PHP复制PHP复制    <?php  
    //创建一个字符数组 
    $arr=array( 
      'id'=>1, 
      'name'=>'Qicloud'
    ); 
    echo json_encode($arr);//创建JSON的关键函数 
    ?> 

输出结果:

代码语言:javascript
复制
JSON复制JSON复制JSON复制    {"id":1,"name":"Qicloud"}

注意: json_encode($value);这个函数只能接收utf-8编码的数据。其他格式数据传给该函数返回null;

封装通信接口的数据方法实例:

demo.php

代码语言:javascript
复制
PHP复制PHP复制PHP复制    class Response
    {
        /**
         * 按json方式输出数据    
         * @param  integer $code 状态码
         * @param  string $msg 提示信息
         * @param  array $author  作者
         * @param  array $request  接口信息
         * @param  array  $data    数据
         * @return string          
         */
        public static function json($code, $msg = '', $author = array(), $request = array(), $data = array())
        {
            if (!is_numeric($code)) { //is_numeric()判断变量是否为数字
                return '';
            }

            $result = array(
                'code' => $code,
                'msg' => $msg,
                'author' => $author,
                'request' => $request,
                'data' => $data
            );
            @header("Content-Type: application/json; charset=utf-8");
            echo json_encode($result, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES);//输出中文字符串并格式化json
            exit;
        }
    }

调用上面的类的方法,创建json 数据

代码语言:javascript
复制
PHP复制PHP复制PHP复制    <?php 
    require('./demo.php'); //引入
    $author = array(
            'author' => '神奇的七云',
            'url' => 'https://blog.zets.cn',
            'email' => 'admin@qqiyu.cn'
        );
        $request = array(
            'request' =>  'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'],
            'format' => 'json',
            'api' => 'a',
            'time' => date("Y-d-m h:i:s", time())
        );
        $data = array(
            'id' => '1',
            'content' => '一句话',
            'author' => null,
            'form' => null,
            'titie' => '嘿嘿',
            'total' => '123456',
        );
        $test = new Response(); //实例化test2.php文件中Response类
        $test->json(200, 'success', $author, $request, $data);

输出结果:

代码语言:javascript
复制
JSON复制JSON复制JSON复制    {
        "code": 200,
        "msg": "success",
        "author": {
            "author": "神奇的七云",
            "url": "https://blog.zets.cn",
            "email": "admin@qqiyu.cn"
        },
        "request": {
            "request": "http://127.0.0.2/?type=json&c=a",
            "format": "json",
            "api": "a",
            "time": "2020-12-04 07:36:43"
        },
        "data": {
            "id": "536725",
            "content": "警告: 对方正在潜入你的心防阵地 请做好投降准备",
            "author": null,
            "form": null,
            "titie": "网络采集",
            "total": "718931"
        }
    }
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-04-12 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • php创建JSON数据详解:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档