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

读取数据的三种方式php

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

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

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

   2.   读取缓存方式开发首页接口(用途很是广)
数据库

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

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

        优势:减少数据库压力
fetch

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

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

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

开发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.     在数据库没有链接成功的时候,会获取一个异常,并返回提示信息。

相关文章
相关标签/搜索