风流不在谈锋胜,袖手无言味最长。这篇文章主要讲述APP接口相关的知识,希望能为你提供帮助。
<
?php
Class Response
{
/**
* 返回json数据
* @param $code 状态码
* @param $message 描述信息
* @param $data 数据
* @param $type 类型
* @param $callback 回调函数
**/
public static function show($code,$message=”,$data=https://www.songbingjia.com/android/”,$type = ‘json’,$callback=”)
{
if($type==’json’)
{
echo self::jsonEncode($code,$message,$data);
}elseif($type == ‘xml’)
{
echo self::xmlEncode($code,$message,$data);
}elseif($type == ‘jsonp’)
{
echo $callback.‘(‘.self::jsonEncode($code,$message,$data).’)’;
}
}
/**
* 返回json数据
* @param $code 状态码
* @param $message 描述信息
* @param $data 数据
*
**/
public static function jsonEncode($code,$message=”,$data=https://www.songbingjia.com/android/”)
{
if(!is_numeric($code))
{
return ”;
}
$result = array(
‘code’ =>
$code,
‘message’ =>
$message,
‘data’ =>
$data,
);
header(“Content-type:text/json;
chaset=utf-8″);
return json_encode($result);
}
/**
* 返回XML数据
* @param $code 状态码
* @param $message 描述信息
* @param $data 数据
*
**/
public static function xmlEncode($code,$message,$data=https://www.songbingjia.com/android/array())
{
if(!is_numeric($code))
{
return ”;
}
$result = array(
‘code’ =>
$code,
‘message’ =>
$message,
‘data’ =>
$data,
);
header(“Content-type:text/xml;
chaset=utf-8”);
$xml = “<
?xml version=’1.0′ encoding=’utf-8′ ?>
\n”;
$xml .= “<
root>
\n”;
$xml .= self::xmlToEncode($result);
$xml .= “<
/root>
\n”;
return $xml;
}
/**
* XML内容循环
* @param $data 数据
*
**/
public static function xmlToEncode($data)
{
if(empty($data))
{
return ”;
}
$xml = $attr = ”;
foreach ($data as $key =>
$value)
{
if(is_numeric($key))
{
$attr = “id=‘{$key}‘”;
$key = “item”;
}
$xml .= “<
{$key} {$attr}>
”;
$xml .= is_array($value) ? self::xmlToEncode($value) : $value ;
$xml .= “<
/{$key}>
\n”;
}
return $xml;
}
}
//二维数据
$type = isset($_GET[‘type’])? $_GET[‘type’] : ‘json’;
$callback = isset($_GET[‘callback’])? $_GET[‘callback’] : ”;
【APP接口】$arr = array(
‘id’=>
1,
‘name’=>
’jia’,
‘type’=>
array(1,2,3)
);
// 状态码 描述信息 数据 类型 回调函数
Response::show(200,’数据返回成功’,$arr,$type,$callback);
推荐阅读
- Android配置如果你的模拟器没有生成Hello World程序
- Android 网络编程的陷阱
- Android开始之 入门
- 40. leetcode 202. Happy Number
- Android Studio创建AIDL文件并实现进程间通讯
- Android基础TOP6_2:Gallery +Image完成画廊
- Android中 string.xml资源 如何添加参数()
- 安卓的异步下载(Asynchttpclient以及Volley)
- SDK manager.exe 运行时报错(系统找不到指定的文件 android.bat)