PHP数组和对象之间的互换
2024-09-05 08:07:10
今天在和前端对接接口的时候,从后台返回数据给前端的时候出现如下JSON格式数据
"goods": [
{
"id": "dEQ144800584Lx",
"ico": "img/goodsIco/HRg144800864lp.jpg"
},
{
"id": "dhD144800584BJ",
"ico": ""
},
{
"id": "oho144800584BB",
"ico": ""
},
{
"id": "sBr144800584fo",
"ico": ""
},
{
"id": "WqD144800584YX",
"ico": "img/goodsIco/gDK144800869wI.jpg"
}
],
说明该键值是以数组的形式传递,而前端需要goods对象,所以后台调试接口时候查询到几个方法,可以封装进项目里面,拿来即可使用,还是比较方便。
/**
* 数组 转 对象
*
* @param array $arr 数组
* @return object
*/
function array_to_object($arr) {
if (gettype($arr) != 'array') {
return;
}
foreach ($arr as $k => $v) {
if (gettype($v) == 'array' || getType($v) == 'object') {
$arr[$k] = (object)array_to_object($v);
}
} return (object)$arr;
}
/**
* 对象 转 数组
*
* @param object $obj 对象
* @return array
*/
function object_to_array($obj) {
$obj = (array)$obj;
foreach ($obj as $k => $v) {
if (gettype($v) == 'resource') {
return;
}
if (gettype($v) == 'object' || gettype($v) == 'array') {
$obj[$k] = (array)object_to_array($v);
}
} return $obj;
}
经过转换后的JSON数据为一下形式:
"goods": {
"id": "MbD144800562Xu",
"name": "登山杖",
"ico": "img/goodsIco/mmh144800859ld.jpg",
"price": "500.00",
"soldPrice": "400.00",
"usercp": "50",
"time": "2019-10-16 14:50:28",
"payNum": 2
},
也就在大学里面学过PHP,而才在新公司从事PHP开发几个月,还有很多需要学习的地方!在此记录一些学习内容2333
参考链接:https://blog.csdn.net/DickyQie/article/details/79235276
最新文章
- Syscan360会议胸牌破解揭秘
- BPM与 SAP &; Oracle EBS集成解决方案分享
- [原创]svn 常见错误总结
- hybrid app 简介
- [Effective JavaScript 笔记]第37条:认识到this变量的隐式绑定问题
- 第一个应用程序HelloWorld
- JavaEE基础(五)
- MFC 学习 之 工具栏的添加(一)
- uploadify控件使用在.net
- 一个简单的jQuery插件开发实例
- add jars和add external jars有什么区别
- java文件读写操作类
- Redis Sentinel主从高可用方案
- 02_NoSQL数据库之Redis数据库:string类型和hash类型
- java编程思想-第六章-某些练习题
- C#基础知识总结(一)
- BZOJ5017 [SNOI2017]炸弹 - 线段树优化建图+Tarjan
- shell命令行执行python(解析json)
- sublime 3插件推荐
- SPOJ SUBLEX Lexicographical Substring Search - 后缀数组