《PHP开发APP接口》笔记
PHP开发APP接口
课程地址
学习要点
- APP接口简介
 - 封装通信接口方法
 - 核心技术
 - APP接口实例
 
服务器端 -> 数据库|缓存 -> 调用接口 -> 客户端
APP接口简介
- APP接口介绍
 - APP如何进行通信
 - 通信格式区别
 - APP接口做的哪些事儿
 
APP接口介绍
概念
PHP面向对象的接口(interface)与APP中的接口(API)概念区别:
interface是一种特殊的抽象类,只定义一系列抽象方法。
// 定义一个接口
interface test {
	public function getTest1(); // 抽象方法
	public function getTest2();
}
// 定义一个类实现接口
class demo implements test {
	public function getTest1()
	{
		echo 1;
	}
	public function getTest2()
	{
		echo 2;
	}
}
APP接口,也叫通信接口,它必须满足三个条件:
- 接口地址
 - 接口文件(处理某些业务逻辑)
 - 接口数据
 
客户端:发送APP地址(接口地址)请求
接口地址:返回 JSON|XML格式数据
客户端:解析数据
客户端:填充内容
APP如何进行通信
APP的通信模式非常类似于浏览器与服务器(B/S)间的通信模式(个人感觉更类似于Ajax的通信模式)。
通信格式区别
APP通信格式主要为XML与JSON格式。
XML定义
拓展标记语言(Extensible Markup Language, XML),主要用于标记数据、定义数据类型,是一种允许用户自定义节点的源语言。由于跨平台与跨语言的特性,XML非常适于传输和通信。
(XHTML是XML的一种应用,也是是HTML的一个子集)。
JSON定义
JSON(JavaScript Object Notation)一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性。可在不同平台之间进行数据交换。JSON采用兼容性很高的、完全独立于语言语言文本格式。
两者的区别
- 可读性
 - 生成数据
 - 传输速度
 
// JSON数据格式生成方法
// 函数 json_decode()
// XML数据格式生成方法
// 1 字符串拼接
// 2 new DomDocument()
// 3 new XMLWriter()
// 4 new SimpleXml()
APP接口做的哪些事儿
获取数据
从数据库或缓存中获取数据,然后通过接口数据返回给客户端
提交数据
通过接口提交数据给服务器,然后服务器进行入库处理或其他处理操作
APP的常用接口
- 版本升级接口
 - 获取数据接口
 - 提交数据接口
 
未完待续...博客园的md格式真丑,丢个evernote的公开链接
《PHP开发APP接口》笔记的更多相关文章
- HTML+CSS笔记 CSS笔记集合
		
HTML+CSS笔记 表格,超链接,图片,表单 涉及内容:表格,超链接,图片,表单 HTML+CSS笔记 CSS入门 涉及内容:简介,优势,语法说明,代码注释,CSS样式位置,不同样式优先级,选择器, ...
 - CSS笔记--选择器
		
CSS笔记--选择器 mate的使用 <meta charset="UTF-8"> <title>Document</title> <me ...
 - HTML+CSS笔记 CSS中级 一些小技巧
		
水平居中 行内元素的水平居中 </a></li> <li><a href="#">2</a></li> &l ...
 - HTML+CSS笔记 CSS中级 颜色&长度值
		
颜色值 在网页中的颜色设置是非常重要,有字体颜色(color).背景颜色(background-color).边框颜色(border)等,设置颜色的方法也有很多种: 1.英文命令颜色 语法: p{co ...
 - HTML+CSS笔记 CSS中级 缩写入门
		
盒子模型代码简写 回忆盒模型时外边距(margin).内边距(padding)和边框(border)设置上下左右四个方向的边距是按照顺时针方向设置的:上右下左. 语法: margin:10px 15p ...
 - HTML+CSS笔记 CSS进阶再续
		
CSS的布局模型 清楚了CSS 盒模型的基本概念. 盒模型类型, 我们就可以深入探讨网页布局的基本模型了.布局模型与盒模型一样都是 CSS 最基本. 最核心的概念. 但布局模型是建立在盒模型基础之上, ...
 - HTML+CSS笔记 CSS进阶续集
		
元素分类 在CSS中,html中的标签元素大体被分为三种不同的类型:块状元素.内联元素(又叫行内元素)和内联块状元素. 常用的块状元素有: <div>.<p>.<h1&g ...
 - HTML+CSS笔记 CSS进阶
		
文字排版 字体 我们可以使用css样式为网页中的文字设置字体.字号.颜色等样式属性. 语法: body{font-family:"宋体";} 这里注意不要设置不常用的字体,因为如果 ...
 - HTML+CSS笔记 CSS入门续集
		
继承 CSS的某些样式是具有继承性的,那么什么是继承呢?继承是一种规则,它允许样式不仅应用于某个特定html标签元素,而且应用于其后代(标签). 语法: p{color:red;} <p> ...
 - HTML+CSS笔记 CSS入门
		
简介: </span>年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的<span>脚本解释程序</span>,作为ABC语言的一种继承. & ...
 
随机推荐
- 配置云服务器 FTP 服务
			
自己配置的环境: OS: 阿里云 CentOS 6.5 >>Begin: 1. 登录到阿里云服务器(如何登录阿里云服务器), 在root权限下, 通过如下命令安装 vsftp [root@ ...
 - 设计3D标签
			
java自带的Label太枯燥了,真是拿不出手啊. 所以,我们要设计3D标签!! 看看下面这张图 原理 看看这图,可以看到哈哈有三种颜色:白色.黑色和灰色 实现的时候并不像PS那样,按几个按钮就O了 ...
 - 粒子动画Particleground.js
			
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
 - [Android] WebView内的本地网页,使用XMLHttpRequest读取本地档案
			
[Android] WebView内的本地网页,使用XMLHttpRequest读取本地档案 问题情景 在Android里,可以使用WebView来呈现本地或是远程的网页内容.但是在显示本地网页时,如 ...
 - Numeral.js – 格式化和操作数字的 JavaScript 库
			
Numeral.js 是一个用于格式化和操作数字的 JavaScript 库.数字可以格式化为货币,百分比,时间,甚至是小数,千位,和缩写格式,功能十分强大.支持包括中文在内的17种语言. 您可能感兴 ...
 - Progress.js – 为页面上的任意对象创建进度条效果
			
Progress.js 是一个 JavaScript 和 CSS3 的库,它帮助开发人员为网页上的每个对象创建和管理进度条效果.你可以设计自己的模板,进度条或者干脆定制. 您可以使用 Progress ...
 - Git是个好工具
			
Git是分布式版本控制系统,我们常用的版本控制工具还有SVN.这里就得区分下什么是分布式版本控制系统,什么是集中化的版本控制系统. 集中化的版本控制系统 集中化的版本控制系统( Centralized ...
 - Maven发布工程到公共库
			
1.发布工程 新建一个 Maven build 选择要发布的工程
 - swift学习笔记之-方法部分
			
//方法部分 import UIKit //方法(Methods) /*方法是与某些特定类型相关联的函数,类.结构体.枚举都可以定义实例方法 实例方法(Instance Methods): 1.属于某 ...
 - java类 对象 和构造方法
			
github地址:https://github.com/lily1010/java_learn/tree/master/dog java中对象和类 java中万物皆对象,比如说动物,里面有猫,狗,鱼等 ...