接口封装 (xml json)

页面apipath.php
<?php 
class add{
	/*
	运用json 输出通信数据*
	*/
	public static function json($cond,$message='',$data = array()){
		//增加判断
		if(!is_numeric($cond)){
			return'123';
		}
		$result = array(
			'cond' => $cond,
			'message' => $message,
			'data' => $data
			);
		//转换成接送数据
		$date = json_encode($result);

		$obj = json_decode($date);
		$name = $obj->data;
		print_r($name);
		//print_r($name->id);
		exit;
	}
	/*
	*xml 格式数据传输
	*基本的xml数据格式
	*/
	public static function xml(){
		header("Content_Type:text/xml");
		$xml = "<?xml version='1.0' enconding='UTF-8'?>\n";
		$xml.= "<root>\n";
		$xml.= "<code>200</code>\n";
		$xml.= "<message>成功</message>\n";
		$xml.= "<data>\n";
		$xml.= "<id>1</id>\n";
		$xml.= "<name>sing</name>\n";
		$xml.= "</data>\n";
		$xml.= "</root>";
	}


	/*
	*运用json 输出通信数据*
	code;状态码
	message:提示信息
	dat:传输的数据
	*/
	public static function xmlEncode($code,$message,$data=array()){
		if(!is_numeric($code)){
			return '';
		}
		//将接受到所有数据放到一个数组里面
		$result = array(
			'code'=>$code,
			'message'=>$message,
			'data'=>$data
			);
		//定义xml 展示形式
		header("Content_Type:text/xml");
		$xml = "<?xml version='1.0' encoding='UTF-8'?>";
		$xml.= "<root>";
		//调用 方法xmlToEncode 将数组
		$xml.= self::xmlToEncode($result);
		$xml.= "/<root>";
		echo $xml;
	}
	//如果是数组形式 就递归展示
	public static function xmlToEncode($data){
		$xml = '';
		foreach($data as $key => $value){
			$xml.= "<{$key}>";
			$xml.= is_array($value)?self::xmlToEncode($value):$value;
			$xml.= "</{$key}>";
		}
		return $xml;
	}
}


//定义数组
$data = array(
	'id' => 1,
	'name' =>'sing'
	);
//调用Class add 下的方法 xmlEncode 将数组传入方法
add::xmlEncode(200,'success',$data);


?>

调用页面

<?php
require_once('./Apipath.php');
$arr = array(
	'id'=>1,
	'name'=>'sing'
	);


//add::json(200,'成功',$arr);
add::xml();
?>




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值