小蚂蚁学习APP接口开发(6)—— APP接口实例——首页数据接口的案例实现

血红的双手。 提交于 2019-12-04 16:56:12

读取数据的三种方式

  1.  读取数据库方式开发首页接口

    从数据库获取数据——》封装——》生成接口数

        优点:数据时效性比较高的系统

   2.   读取缓存方式开发首页接口(用途非常广)

        从数据库获取信息——》封装——》返回数据

                   再次请求——》缓存——》返回数据

        优点:减小数据库压力

   3.   定时读取缓存方式开发接口

        数据库 ——》crontab(定时生成)

        请求    ——》缓存——》返回数据

开发APP可以安装工具    :    Start BlueStacks安卓模拟器

读取数据库方式发开接口的代码实现:

<?php
/***********************************
*
*	读取数据库的方式开发首页接口
*	学php的小蚂蚁
*	博客 http://my.oschina.net/woshixiaomayi/blog
*
************************************/

//载入前天写的db类
//代码内容请参考 http://my.oschina.net/woshixiaomayi/blog/518295
require_once('./db.php');
//载入之前写好的接口响应类
//代码内容请参考 http://my.oschina.net/woshixiaomayi/blog/517384	
require_once('./response.php');

//接收分页数据 page 为当前第几页  pagesize 一页多少数据
$page	=	isset($_GET['page'])?$_GET['page']:1;
$pagesize=	isset($_GET['pagesize'])?$_GET['pagesize']:5;

//检测这两个数值是否为数字
if(!is_numeric($page) or !is_numeric($pagesize)){
	//不是数字,发送错误提示
	/*
		这里之所以使用了一个return是加强了程序的可读性,因为对程序不熟悉的程序员,不知道
		在show方法中有exit,加上一个return,其他人就会知道执行到这一步之后,程序就会停止,
		后面的程序就不会执行了。方便了其他人,大家好才是真的好\(^o^)/YES!
	*/
	return Response::show(400,'参数不合法');
}
//设置分页所需要的偏移量
$offset	=	($page-1)*$pagesize;
//编写sql语句
$sql="select * from actor limit ".$offset.",".$pagesize;

//如果连接数据库的时候出错,获取信息,并将自定义的信息返回
//以免将错误直接暴露给用户
try{
	$connect =	Db::getInstance()->connect();
}catch(Exception $ea){
	//返回给APP的错误提示
	return Response::show(400,'mysql not connect');
}

//数据库连接成功,执行sql语句,获取结果集
$result	=	mysql_query($sql,$connect);
$index_data=array();
while($row=mysql_fetch_assoc($result)){
	$index_data[]=$row;
}

if($index_data){
	//所需的结果数据拿到,返回数据
	return Response::show(200,'内容获取成功',$index_data);
}else{
	//没有拿到,返回错误提示
	return Response::show(400,'首页数据获取失败');
}

?>

需要注意两点需要注意:

  1.     添加一个return,方便其他人阅读代码。

  2.     在数据库没有连接成功的时候,会获取一个异常,并返回提示信息。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!