php开发安卓服务器之 php封装json xml通用app数据通信接口
2014-12-15 17:37
1076 查看
php文件:test.php 是通用通信类
testxml&json.php通过调用test类的show()方法实现了生成xml和json
这样app开发工程师就可以通过给show()函数最后一个参数赋不同值,选择要生成xml数据还是json数据。
通过http请求的get请求的参数:
http://localhost/testxml&json.php?format=xml 这是要生成xml的url
<?php class Response { const JSON = "json"; /** * 按综合方式输出通信数据 * @param integer $code 状态码 * @param string $message 提示信息 * @param array $data 数据 * @param string $type 数据类型 * return string */ public static function show($code, $message = '', $data = array(), $type = self::JSON) { if(!is_numeric($code)) { return ''; } $type = isset($_GET['format']) ? $_GET['format'] : self::JSON; $result = array( 'code' => $code, 'message' => $message, 'data' => $data, ); if($type == 'json') { self::json($code, $message, $data); exit; } elseif($type == 'array') { var_dump($result); } elseif($type == 'xml') { self::xmlEncode($code, $message, $data); exit; } else { // TODO } } /** * 按json方式输出通信数据 * @param integer $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 ); echo json_encode($result); exit; } /** * 按xml方式输出通信数据 * @param integer $code 状态码 * @param string $message 提示信息 * @param array $data 数据 * return string */ public static function xmlEncode($code, $message, $data = array()) { if(!is_numeric($code)) { return ''; } $result = array( 'code' => $code, 'message' => $message, 'data' => $data, ); header("Content-Type:text/xml"); $xml = "<?xml version='1.0' encoding='UTF-8'?>\n"; $xml .= "<root>\n"; $xml .= self::xmlToEncode($result); $xml .= "</root>"; echo $xml; } public static function xmlToEncode($data) { $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; } }
testxml&json.php通过调用test类的show()方法实现了生成xml和json
<?php require_once('./test.php'); $data=array( 'id'=>1, 'name'=>"david" ); Response::show(200,'success',$data);
这样app开发工程师就可以通过给show()函数最后一个参数赋不同值,选择要生成xml数据还是json数据。
通过http请求的get请求的参数:
http://localhost/testxml&json.php?format=xml 这是要生成xml的url
相关文章推荐
- php封装JSON或XML数据 PHP开发APP接口
- PHP 开发 APP 接口 学习笔记与总结 - JSON 结合 XML 方式封装通信接口
- 夺命雷公狗---PHP开发APP接口---3(XML方式封装接口数据方法)
- APP接口开发之PHP封装JSON数据 ,并读取JSON数据的方法
- PHP 开发 APP 接口 学习笔记与总结 - XML 方式封装通信接口
- 夺命雷公狗---PHP开发APP接口---4(综合通信方式封装)
- PHP对接APP的接口类,可返回json数据,xml数据
- PHP封装xml数据通信接口
- PHP 开发 APP 接口 学习笔记与总结 - JSON 方式封装通信接口
- php 封装json xml通讯数据方法 php开发APP接口
- PHP开发APP接口(二):封装通信接口方法
- PHP接口数据的封装XML和JSON
- PHP开发APP接口---返回数据的封装类
- 【APP接口开发】php输出json格式数据
- 夺命雷公狗---PHP开发APP接口---1(手动编写json)
- PHP做app接口-json和xml
- 封装通信接口数据的方法-json
- php写接口例子返回json和xml数据
- 封装XML或Json通信数据
- PHP生成json和xml类型接口数据格式