• 综合方式输出通信数据


    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'?>
    ";
    		$xml .= "<root>
    ";
    		$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}>
    ";
    		}
    		return $xml;
    	}
    }
    

    调用静态方法:类名::方法
    Response::show(200,'success',$data);

  • 相关阅读:
    MUI识别移动设备系统(主要用于区分苹果还是安卓)
    根据经纬度实现地图定位
    高德地图根据经纬度获取地理位置
    RSA加密解密
    .bat批处理启动redis
    Python 爬取 42 年高考数据,告诉你高考为什么这么难?
    作为软件测试的前辈你能不能给迷茫中的我一点建议?
    十分钟快速搭建Python+Selenium自动化测试环境(含视频教程)
    万事开头难!软件测试基础知识大全(新手入门必备)
    Dynamics CRM
  • 原文地址:https://www.cnblogs.com/aten/p/9525841.html
Copyright © 2020-2023  润新知