时间:2021-07-01 10:21:17 帮助过:1人阅读
上篇学习了封装mysql的实例化对象类!
2.这篇将封装一个app接口类,用来生成 json数据和xml数据
3.了解和掌握
3.1 xml和json的区别
xml:扩展标记语言:可以标记数据 ,定义数据类型;数据格式清晰明了, 可读性高;
json:一种轻量级的数据交换格式;生成数据简单;传输速度快;
3.2 app接口与数据
获取数据:从数据库中或者缓存中获取数据(可以是缓存里的数据)
提交数据:通过get方式或者post方式提交数据,服务端处理后,返回数据
3.3 通信数据标准格式
状态码:code
提示信息:message
返回数据: data
3.4 定时任务和缓存 (这里不封装)
缓存 :静态缓存 , Memcache 和 Redis 缓存技术
定时任务 :corntab
4.封装
4.1 json封装
json方式封装接口数据方法
函数json_encode();
只接收utf-8的编码数据
4.2 xml封装
组装字符串 (简单)
使用系统的方法
4.3 实现类
$code,
'msg'=>$msg,
'data'=>$data
);
if($type=='json'){
self::jsonEncode($code,$msg,$data);
exit();
}elseif ($type=='xml'){
self::xmlEncode($code,$msg,$data);
exit();
}elseif ($type='array'){
var_dump($result);
exit();
}
}
/**
* 02.按json方式输出 通信数据
* @param int $code 状态码
* @param string $msg 提示信息
* @param array $data 数据
* retrun string
*/
public static function jsonEncode($code,$msg='',$data=array()) {
header("Content-Type:text/json");
#判断状态码
if(!is_numeric($code)){
return '';
}
$result=array(
'code'=>$code,
'msg'=>$msg,
'data'=>$data
);
echo json_encode($result);
exit();
}
/**
* 03.封装xml 输出通信数据
* @param unknown $code
* @param unknown $msg
* @param unknown $data
*/
public static function xmlEncode($code,$msg='',$data=array()){
if(!is_numeric($code)){
return '';
}
$result=array(
'code'=>$code,
'msg'=>$msg,
'data'=>$data
);
header("Content-Type:text/xml");
$xml="";
$xml.="4.4 调用
通过url实现 ,显示数据类型 type可以为 xml ,json ,array !
http://localhost:8081/appInterface/test.php?type=json
require_once 'appUtil.php';
$arr=array( 'id'=>1, 'name'=>'yuan', 'age'=>23, 'location'=>'hpu' ); $arr1=array(1,4,5,2,6,3); Response::jsonEncode(200,'success',$arr);
5.综合 上篇连接mysql数据库 实现:数据封装
//调用
$con=Db::getInstance()->connect();
//查询语句
$sql='select * from user_info';
//执行,返回结果集
$result=mysql_query($sql,$con);
//添加的新数组
$arr3=array();
while ($row=mysql_fetch_row($result)){
array_push($arr3,$row);
}
Response::show('200','success',$arr3);
6. appUtil.php下载
http://download.csdn.net/detail/lablenet/8995987
版权声明:本文为博主原创文章,未经博主允许不得转载。
以上就介绍了php-app接口实现(json和xml),包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。