PHP生成json和xml类型接口数据格式
php生成接口通信数据
/** *生成接口数据格式 */ classResponse{ /** *[show按综合方式输出数据] *@param[int]$code[状态码] *@param[string]$message[提示信息] *@paramarray$data[数据] *@param[string]$type[类型] *@return[string][返回值] */ publicstaticfunctionshow($code,$message,$data=array(),$type=''){ if(!is_numeric($code)){ return''; } $result=array( 'code'=>$code, 'message'=>$message, 'data'=>$data ); if($type=='json'){ returnself::json($code,$message,$data); }elseif($type=='xml'){ returnself::xml($code,$message,$data); }else{ //TODO } } /** *[json按json方式输出数据] *@param[int]$code[状态码] *@param[string]$message[提示信息] *@param[array]$data[数据] *@return[string][返回值] */ publicstaticfunctionjson($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[提示信息] *@paramarray$data[数据] *@return[string][返回值] */ publicstaticfunctionxml($code,$message,$data=array()){ if(!is_numeric($code)){ return''; } $result=array( 'code'=>$code, 'message'=>$message, 'data'=>$data ); header("Content-Type:text/xml"); $xml="<?xmlversion='1.0'encoding='UTF-8'?>\n"; $xml.="<root>\n"; $xml.=self::xmlToEncode($data); $xml.="</root>"; return$xml; } publicstaticfunctionxmlToEncode($data){ $xml=''; foreach($dataas$key=>$value){ if(is_numeric($key)){ $attr="id='{$key}'"; $key="item"; } $xml.="<{$key}{$attr}>\n"; $xml.=is_array($value)?self::xmlToEncode($value):"{$value}\n"; $xml.="</{$key}>\n"; } return$xml; } } //测试 $grade=array("score"=>array(70,95,70.0,60,"70"),"name"=>array("ZhangSan","LiSi","WangWu","ZhaoLiu","TianQi")); $response=newResponse(); $result=$response::show(200,'success',$grade,'json'); print_r($result);
以上所述就是本文的全部内容了,希望大家能够喜欢。