这篇文章将为大家详细讲解有关PHP如何编写App接口,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
启动服务器
这里是以MAMP PRO软件为例,如何启动服务器。如下图,我们假设服务地址为 www.api.com
,然后将项目目录与这个服务地址关联起来,看图中右下角圈圈部分:
环境启动后,就可以在浏览器中直接输入 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 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接口”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。