php 封装 json,PHP封装XML和JSON格式数据接口操作示例

本文展示了如何在PHP中封装XML和JSON格式的接口数据。通过使用json_encode()函数轻松生成JSON数据,以及通过自定义类构建XML数据,包括设置状态码、消息和数据内容。文中提供了一个API类的示例,用于创建这两种格式的数据,并进行了测试。
摘要由CSDN通过智能技术生成

本文实例讲述了PHP封装XML和JSON格式数据接口操作。分享给大家供大家参考,具体如下:

使用PHP开发app后端的接口时,我们需要返回数据,最常用的就是XML和JSON格式的数据,那么样返回呢?

1.JSON

json数据是最容制造的,只要使用php自带的json_encode()函数就可以简单的制作出json数据了

2.XML

xml数据就要复杂一点了,让我们看一下xml数据的格式

3826d4a0e56583e19d52df87f45082ff.png

那么怎样构造呢?

3.制作生产接口数据的类

//定义生成接口数据类

class Api

{

/*

* 生成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

);

return json_encode($result);

}

/*

* 生成xml数据格式

* @param integer $code 状态码

* @param string $message 提示信息

* @param array $data 数据

* return string

*/

public static function xml($code, $message = '', $data = array())

{

if(!is_numeric($code)) {

return '';

}

$result = array(

'code' => $code,

'message' => $message,

'data' => $data

);

//构造xml数据

//使返回的数据以xml格式显示

header("Content-Type:text/xml");

//开始拼xml数据

$xml = "<?xml version='1.0' encoding='UTF-8'?>";

//根节点

$xml .= "";

//创建一个额外函数来构造

$xml .= self::xmlToEncode($result);

$xml .= "";

return $xml;

}

//构造xml数据函数

public static function xmlToEncode($data)

{

$xml = "";

$attr = "";

foreach($data as $key => $value)

{

//如果传递的数组是没有键值的话,<0>,<1>这种类型的节点是不合法的,所有就要判断了,如果是数字就这样显示

if(is_numeric($key)) {

$attr = "id = '{$key}'";

$key = "item";

}

//如果是数字就加上$attr

$xml .= "";

//如果value是数组就进行递归

$xml .= is_array($value) ? self::xmlToEncode($value) : $value;

$xml .= "{$key}>";

}

return $xml;

}

}

//下面就来测试一下吧

$data = array(

'id' => 1,

'name' => 'zjp',

'content' => array(

'sex' => '男',

'age' => '24',

'num' => array(1,3,5,7,9)

)

);

$xml = Api::xml(200, "返回数据成功", $data);

$json = Api::json(200, "返回数据成功", $data);

?>

xml格式数据:上面那张介绍xml格式

json格式数据:

79eb4ac3ef1dee129a148b60dd51200d.png

PS:本站还提供了如下XML与JSON相关工具,方便大家参考使用:

希望本文所述对大家PHP程序设计有所帮助。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值