ホームページ  >  記事  >  バックエンド開発  >  PHP は Android サーバーを開発し、PHP は JSON XML ユニバーサル アプリ データ通信インターフェイスをカプセル化します

PHP は Android サーバーを開発し、PHP は JSON XML ユニバーサル アプリ データ通信インターフェイスをカプセル化します

WBOY
WBOYオリジナル
2016-06-23 13:43:221064ブラウズ

php ファイル: test.php は一般的な通信クラスです

<?phpclass 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 はテストクラスの show() メソッドを呼び出すことで xml と json の生成を実現します


<?phprequire_once('./test.php');$data=array('id'=>1,'name'=>"david");Response::show(200,'success',$data);


このように、アプリ開発エンジニアは、show() 関数の最後のパラメーターに異なる値を割り当てることで、xml データまたは json データを生成することを選択できます。

http リクエストによる get リクエストのパラメータ:

http://localhost/testxml&json.php?format=xml これは xml を生成する URL です


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。