php生成接口通信数据
/**
* 生成接口数据格式
*/
class Response{
/**
* [show 按综合方式输出数据]
* @param [int] $code [状态码]
* @param [string] $message [提示信息]
* @param array $data [数据]
* @param [string] $type [类型]
* @return [string] [返回值]
*/
public static function show($code, $message, $data = array(),$type = ''){
if(!is_numeric($code)){
return '';
}
$result = array(
'code' => $code,
'message' => $message,
'data' => $data
);
if($type == 'json'){
return self::json($code, $message, $data);
}elseif($type == 'xml'){
return self::xml($code, $message, $data);
}else{
//TODO
}
}
/**
* [json 按json方式输出数据]
* @param [int] $code [状态码]
* @param [string] $message [提示信息]
* @param [array] $data [数据]
* @return [string] [返回值]
*/
public static function json($code, $message, $data = array()){
if(!is_numeric($code)){
return '';
}
$result = array(
'code' => $code,
'message' => $message,
'data' => $data
);
$result = json_encode($result);
return $result;
}
/**
* [xml 按xml格式生成数据]
* @param [int] $code [状态码]
* @param [string] $message [提示信息]
* @param array $data [数据]
* @return [string] [返回值]
*/
public static function xml($code, $message, $data = array()){
if(!is_numeric($code)){
return '';
}
$result = array(
'code' => $code,
'message' => $message,
'data' => $data
);
header("Content-Type:text/xml");
$xml = "<";
$xml .= "<root>\n";
$xml .= self::xmlToEncode($data);
$xml .= "</root>";
return $xml;
}
public static function xmlToEncode($data){
$xml = '';
foreach($data as $key => $value){
if(is_numeric($key)){
$attr = "id='{$key}'";
$key = "item";
}
$xml .= "<{$key} {$attr}>\n";
$xml .= is_array($value) "{$value}\n";
$xml .= "</{$key}>\n";
}
return $xml;
}
}
//测试
$grade = array("score" => array(70, 95, 70.0, 60, "70"), "name" => array("Zhang San", "Li Si", "Wang Wu", "Zhao Liu", "TianQi"));
$response = new Response();
$result = $response :: show(200,'success',$grade,'json');
print_r($result);
以上所述就是本文的全部内容了,希望大家能够喜欢。
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
桃源资源网 Design By www.nqtax.com
暂无“PHP生成json和xml类型接口数据格式”评论...
P70系列延期,华为新旗舰将在下月发布
3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。
而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?
根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。