天天看点

Php封装安卓,php开发安卓服务器之php封装jsonxml通用app数据通信接口

php文件:test.php 是通用通信类

输出通信数据* @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}}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;}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 = "\n";$xml .= "\n";$xml .= self::xmlToEncode($result);$xml .= "";echo $xml;}public static function xmlToEncode($data) {$xml = $attr = "";foreach($data as $key => $value) {if(is_numeric($key)) {$attr = " id='{$key}'";$key = "item";}$xml .= "";$xml .= is_array($value) ? self::xmlToEncode($value) : $value;$xml .= "{$key}>\n";}return $xml;}}

testxml&json.php通过调用test类的show()方法实现了生成xml和json

1,'name'=>"david");Response::show(200,'success',$data);

这样app开发工程师就可以通过给show()函数最后一个参数赋不同值,选择要生成xml数据还是json数据。

通过http请求的get请求的参数:

http://localhost/testxml&json.php?format=xml 这是要生成xml的url

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉

本文系统来源:php中文网