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

本文转自IT摆渡网欢迎转载,请标明出处

更多php文章请阅读

php问题解决

  php创建JSON数据详解:

<?php
//创建一个字符数组
$arr=array(
  'id'=>1,
  'name'=>'david'
); 

echo json_encode($arr);//这个是创建JSON的关键函数
?>

  实现结果

{"id":1,"name":"david"}

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

  封装通信接口的数据方法

  1.通信数据格式标准:

  0111 code 状态码(200,400)如:登录成功200,不成功400

  message 提示信息(邮件格式不对,200代表登录成功)

  data 返回数据

  实例:

  demo.php

<?php
class Response{
/**
*按json方式输出通信数据
*@param integer $code 状态码
*@param string $message 提示信息
*@param array $data 数据
*return string 返回值为json
*/
//静态方法,构造json数据
public static function json($code,$message='',$data=array()){ 

  if(!is_numeric($code)){
   return '';
   }
  $result=array(
  'code'=>$code,
  'message'=>$message,
  'data'=>$data
   );
echo json_encode($result);
exit;
  }
}
?> 

</pre><pre name="code" class="php">

  test.PHP主文件,调用上面的类的方法,创建json 数据

<?php
//把demo.php包含到这个文件里一次
require_once('./demo.php');
$arr=array(
'id'=>1,
'name'=>'david'
);
//调用Resonpse类的json方法
Response::json(200,'数据返回成功',$arr);
?>

  运行test.php结果:

{"code":200,"message":"\u6570\u636e\u8fd4\u56de\u6210\u529f","data":{"id":1,"name":"david"}}

阅读了这篇文章的人还阅读了

在线学习PHP的好网站有哪些
如何设置访问index.php/index.html的时候自动切换到顶
提供PHP问题错误修改服务
PHP出现错误的查错方法总结

时间: 2024-09-16 23:44:39

php封装json通信接口详解及实例的相关文章

JSON对象 详解及实例代码_基础知识

前面的话 json(javascript object notation)全称是javascript对象表示法,它是一种数据交换的文本格式,而不是一种编程语言,用于读取结构化数据.2001年由Douglas Crockford提出,目的是取代繁琐笨重的XML格式.本文将详细介绍关于json的内容  语法规则 JSON的语法可以表示以下三种类型的值 [1]简单值 简单值使用与JavaScript相同的语法,可以在JSON中表示字符串.数值.布尔值和null 字符串必须使用双引号表示,不能使用单引号

iOS-GCD使用详解及实例解析_IOS

iOS-GCD使用详解 前言 对初学者来说,GCD似乎是一道迈不过去的坎,很多人在同步.异步.串行.并行和死锁这几个名词的漩涡中渐渐放弃治疗.本文将使用图文表并茂的方式给大家形象地解释其中的原理和规律. 线程.任务和队列的概念 异步.同步 & 并行.串行的特点 一条重要的准则 一般来说,我们使用GCD的最大目的是在新的线程中同时执行多个任务,这意味着我们需要两项条件: 能开启新的线程 任务可以同时执行 结合以上两个条件,也就等价"开启新线程的能力 + 任务同步执行的权利",只有

OpenStack Heat AutoScaling详解及实例代码_OpenStack

OpenStack Heat AutoScaling 一.背景 Openstack的Heat是在H版之后加入的组件,旨在创建一套业务流程,更轻松的管理一个集群.集群内的虚拟机可以作为一个整体,统一的为客户提供服务.Heat中把功能定义成资源,在Heat中会用到Nova,Neutron,Ceilometer等组件,这些都可以看成是资源,通过模板文件来描述,模板文件可以是yaml格式,也可以是json格式,一般是yaml格式. AutoScaling的概念最早出现在AWS,AutoScaling是一

Android 混淆代码详解及实例

  Android 混淆代码详解及实例         为了防止自己的劳动成果被别人窃取,混淆代码能有效防止被反编译,下面来总结以下混淆代码的步骤: 1. 大家也许都注意到新建一个工程会看到项目下边有这样proguard-project.txt一个文件,这个对混淆代码很重要,如果你不小心删掉了,没关系,从其他地方拷贝一个过来 2. 最重要的就是在proguard-project.txt添加混淆的申明了: a. 把所有你的jar包都申明进来,例如: -libraryjars libs/apns_1

php array_values 返回数组的所有值详解及实例_php实例

php array_values php array_values 函数用于返回数组中所有的值,注意该函数将为新数组建立数组索引,原来的文字索引将不存在.本文章向大家讲解array_values函数的基本语法及使用实例. array_values 返回数组中所有的值 基本语法: array array_values ( array $input ) array_values() 返回 input 数组中所有的值并给其建立数字索引. 参数介绍: 参数 描述 input 必需.规定数组. 返回值:

thinkPHP中钩子的两种配置调用方法详解_php实例

本文实例讲述了thinkPHP中钩子的两种配置调用方法.分享给大家供大家参考,具体如下: thinkphp的钩子行为类是一个比较难以理解的问题,网上有很多写thinkphp钩子类的文章,我也是根据网上的文章来设置thinkphp的钩子行为的,但根据这些网上的文章,我在设置的过程中,尝试了十几次都没有成功,不过,我还是没有放弃,最后还是在一边调节细节,一边试验的过程中实现了钩子行为的设置.下面是我个人的设置经验,在这里跟大家分享一下. 个人做了两种设置,都试验成功了,一个简单点,在thinkphp

ReactNative Alert详解及实例代码_Android

Alert顾名思义一就是一个警告框,一般使用情况比如:退出登录,清楚缓存,提示修改密码等等...ReactNative中的Alert只有一个静态方法alert()其中有四个参数:标题,信息,按钮和按钮类型 在Android按钮至多有三个 下面是使用情况: 实例代码: /** * Created by Administrator on 2016/9/12. */ import React, {Component} from 'react'; import { StyleSheet, View, T

Docker volume使用详解及实例_docker

Docker volume使用     一个数据卷是一个特别指定的目录,该目录利用容器的UFS文件系统可以为容器提供一些稳定的特性或者数据共享.数据卷可以在多个容器之间共享.       创建数据卷,只要在docker run命令后面跟上-v参数即可创建一个数据卷,当然你也可以跟多个-v参数来创建多个数据卷,当创建好带有数据卷的容器后,你就可以在其他容器中通过--volumes-froms参数来挂载该数据卷了,而不管该容器是否运行.你也可以在Dockerfile中通过VOLUME指令来增加一个或

php mysql insert into 结合详解及实例代码_Mysql

php mysql insert into 结合详解 ySQL INSERT INTO语句在实际应用中是经常使用到的语句,所以对其相关的内容还是多多掌握为好. 向数据库表插入数据 INSERT INTO 语句用于向数据库表添加新记录. 语法 INSERT INTO table_name VALUES (value1, value2,....) 您还可以规定希望在其中插入数据的列: INSERT INTO table_name (column1, column2,...) VALUES (valu