PHP封装通信接口数据方法-生成json与通信数据标准格式
//封装通信接口数据方法 //一.PHP生成json数据 $arr = array( 'id' => 1, 'name' => 'xiaoming' ); echo json_encode($arr);//json_encode()这个函数正能接受utf-8编码的数据,如果传入其他编码格式的值则返回null $data = '输出json数据'; $newData = iconv('UTF-8','GBK',$data);//转换编码格式参数一原始编码格式,参数二要转换成为的编码格式,参数三传入要转换格式的数据 echo json_encode($newData);//这里转换输出的是gbk编码格式的数据,结果返回空
//二.通信数据标准格式 /** * code 状态码(200,400等) * message 提示信息(邮箱格式不正确;数据返回成功等) * data 返回数据 */ //实例: //test2.php class Response { /** * 按json方式输出数据 * @param integer $code 状态码 * @param string $message 提示信息 * @param array $data 数据 * @return string */ public static function json($code,$message = '',$data = array()){ if (!is_numeric($code)) { //is_numeric()判断变量是否为数字 return ''; } $result = array( 'code' => $code, 'message' => $message, 'data' => $data ); echo json_encode($result); exit; } }
<?php //test1.php require('./models/test2.php');//引入test2.php $data = array( 'id' => 1, 'name' => 'xiaojie' ); $test = new Response();//实例化test2.php文件中Response类 $test->json(200,'数据返回成功',$data);
//浏览器执行test1.php文件返回结果
{"code":200,"message":"\u6570\u636e\u8fd4\u56de\u6210\u529f","data":{"id":1,"name":"xiaojie"}}