利用PHP如何写APP接口详解


Posted in PHP onAugust 23, 2016

搭建PHP环境

由于本人使用的电脑是Mac,因此推荐大家使用MAMP PRO这款软件,不过是收费版,相信不想花钱的大家会有办法搞定的!

MAMP PRO这款软件是集成环境软件,已经有apache、mysql、php了,具备运行解析PHP的环境了!

如果不想使用集成环境,可以自己搭建。Mac自带了apache和PHP环境的,只需要稍加配置一下就可以使用了,然后再安装一下mysql就可以了!

大家可以看一下简单版本配置:Mac配置PHP环境 这篇文章。

启动服务器

这里是以MAMP PRO软件为例,如何启动服务器。如下图,我们假设服务地址为 www.api.com ,然后将项目目录与这个服务地址关联起来,看图中右下角圈圈部分:

利用PHP如何写APP接口详解

环境启动后,就可以在浏览器中直接输入 www.api.com 运行起来了!

开始GET接口

我们的空项目在首次运行后,会自动生成 index.php 这个文件,我们删除里面的内容,然后修改如下:

<?php
 
$data = array(
 'tid' => 100, 
 'name' => '标哥的技术博客',
 'site' => 'www.huangyibiao.com');
 
$response = array(
 'code' => 200, 
 'message' => 'success for request',
 'data' => $data,
 );
 
echojson_encode($response);

我们这里的结构是日常App开发中最常见的返回数据结构了吧?通常都是状态码、状态信息和客户端业务数据。

PHP其实也好给力,声明数组后,通过 json_encode 函数就可以输出json格式数据了!

iOS调GET接口

我们有了服务器,也写了接口了,那么客户端如何请求又如何获取数据呢?我们先来看一下最简单的GET请求例子,其中使用了HYBNetworking笔者的这个开源库:

NSString *url = @"http://www.api.com/index.php";
[HYBNetworkinggetWithUrl:urlrefreshCache:YESsuccess:^(id response) {
 
}fail:^(NSError *error) {
 
}];

我们看一下iOS客户端的响应结果:

利用PHP如何写APP接口详解

从响应结果可以看到,与我们服务器接口所返回的是一致的,看下图在浏览器中访问的效果:

利用PHP如何写APP接口详解

PHP POST接口

假设我们要求传参数type过来,而且要求是数值型,用于返回不同的数据,当我们做接口测试时,就可以通过这么来干,就不需要等后台给接口了!

<?php
 
$type = $_POST['type'];
$data = '';
 
if (isset($type) && is_numeric($type) && $type >= 0) {
 if ($type == 1) {
 $data = array(
  'type' => $type, 
  'name' => '标哥的技术博客',
  'site' => 'www.huangyibiao.com');
 } else if ($type == 2) {
 $data = array(
  'type' => $type, 
  'name' => '公众号:标哥的技术博客',
  'site' => 'weixin search: biaogedejishuboke');
 } 
 
 $response = array(
 'code' => 200, 
 'message' => 'success for request',
 'data' => $data,
 );
 
 echojson_encode($response);
 return;
} 
 
$response = array(
 'code' => 999, 
 'message' => 'argument error for request',
 'data' => $data,
 );
 
echojson_encode($response);

iOS调POST接口

下面是iOS客户端如何调用刚才所写的PHP POST接口,其中使用了HYBNetworking笔者的这个开源库:

NSString *url = @"http://www.api.com/index.php";
NSDictionary *params = @{@"type" : @(1)};
[HYBNetworkingpostWithUrl:urlrefreshCache:YESparams:paramssuccess:^(id response) {
 
}fail:^(NSError *error) {
 
}];

我们看看效果如下,可看到如愿地接收到了服务器返回的接口数据并解析出来了:

利用PHP如何写APP接口详解

总结

本篇文章的内容到这就基本结束了,相信大家若想学习它,一定会认真去操作一遍的!今后会慢慢接触它,慢慢掌握它,一定会让你在工作上更加顺利的!希望本文对大家能有所帮助。

PHP 相关文章推荐
PHP 应用程序的安全 -- 不能违反的四条安全规则
Nov 26 PHP
php中将数组存到文件里的实现代码
Jan 19 PHP
一些php项目中比较通用的php自建函数的详解
Jun 06 PHP
解析如何用php screw加密php源代码
Jun 20 PHP
php中的PHP_EOL换行符详细解析
Oct 26 PHP
Win7 64位系统下PHP连接Oracle数据库
Aug 20 PHP
推荐几款用 Sublime Text 开发 Laravel 所用到的插件
Oct 30 PHP
PHP中trim()函数简单使用指南
Apr 16 PHP
PHP实现图片自动清理的方法
Jul 08 PHP
Laravel 5.3 学习笔记之 配置
Aug 28 PHP
laravel 5.3中自定义加密服务的方案详解
May 09 PHP
visual studio code 调试php方法(图文详解)
Sep 15 PHP
PHP微信API接口类
Aug 22 #PHP
简单PHP会话(session)说明介绍
Aug 21 #PHP
PHP中ID设置自增后不连续的原因分析及解决办法
Aug 21 #PHP
PHP控制前台弹出对话框的实现方法
Aug 21 #PHP
php代码检查代理ip的有效性
Aug 19 #PHP
PHP中new static()与new self()的比较
Aug 19 #PHP
ThinkPHP3.2.1图片验证码实现方法
Aug 19 #PHP
You might like
php 判断访客是否为搜索引擎蜘蛛的函数代码
2011/07/29 PHP
PHP中去除换行解决办法小结(PHP_EOL)
2011/11/27 PHP
PHP中echo和print的区别
2014/08/28 PHP
php计算两个整数的最大公约数常用算法小结
2015/03/05 PHP
ThinkPHP中where()使用方法详解
2016/04/19 PHP
PHP入门教程之PHP操作MySQL的方法分析
2016/09/11 PHP
javascript getElementsByClassName函数
2010/04/01 Javascript
jquery.validate使用攻略 第三部
2010/07/01 Javascript
IE6图片加载的一个BUG解决方法
2010/07/13 Javascript
JavaScript:new 一个函数和直接调用函数的区别分析
2013/07/10 Javascript
JavaScript实现的in_array函数
2014/08/27 Javascript
js控制鼠标事件移动及移出效果显示
2014/10/19 Javascript
纯js实现手风琴效果
2020/04/17 Javascript
jquery使用Cookie和JSON记录用户最近浏览历史
2016/04/19 Javascript
关于Iframe父页面与子页面之间的相互调用
2016/11/22 Javascript
jQuery源码分析之sizzle选择器详解
2017/02/13 Javascript
ES6中Proxy与Reflect实现重载(overload)的方法
2017/03/30 Javascript
javascript中this用法实例详解
2017/04/06 Javascript
JS实现简单的文字无缝上下滚动功能示例
2019/06/22 Javascript
linux下安装easy_install的方法
2013/02/10 Python
跟老齐学Python之有容乃大的list(2)
2014/09/15 Python
Windows下PyCharm安装图文教程
2018/08/27 Python
Python API 自动化实战详解(纯代码)
2019/06/11 Python
对Python强大的可变参数传递机制详解
2019/06/13 Python
Python 实现顺序高斯消元法示例
2019/12/09 Python
Django实现后台上传并显示图片功能
2020/05/29 Python
管理学专业个人求职信范文
2013/09/21 职场文书
毕业生求职简历的自我评价
2013/10/23 职场文书
英语专业学生的自我评价
2013/12/30 职场文书
怎样写好创业计划书的内容
2014/02/06 职场文书
合作意向书模板
2014/03/31 职场文书
餐厅周年庆活动方案
2014/08/25 职场文书
单位工作证明格式模板
2014/10/04 职场文书
加强作风建设演讲稿
2014/10/24 职场文书
七年级生物教学反思
2016/02/20 职场文书
css filter和getUserMedia的联合使用
2022/02/24 HTML / CSS