PHP------数组和对象相互转化,stdClass Object转array
数组转JSON
PHP json_encode() 用于对变量进行 JSON 编码,该函数如果执行成功返回 JSON 数据,否则返回 FALSE 。
JSON转数组
PHP json_decode() 函数用于对 JSON 格式的字符串进行解码,并转换为 PHP 变量。
$arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5); echo json_encode($arr);
1 | 结果: { "a" : 1 , "b" : 2 , "c" : 3 , "d" : 4 , "e" : 5 } |
反之亦然。
第三方接口解析(stdClass Object转array)
最近开发商城,使用到了物流的第三方API接口的JSON数据,往往单纯通过json_decode方法解析获得得数值一般并非数组,
而是带有stdClass Objec的对象字符串,这时如果我们想获取相应的PHP数组时,需通过以下几种方法来获取。
//PHP stdClass Object转array function object_array($array) { if(is_object($array)) { $array = (array)$array; } if(is_array($array)) { foreach($array as $key=>$value) { $array[$key] = object_array($value); } } return $array; }
因为json_decode()函数可以接受两个参数:
当 $data= json_decode($object); //得到的是 object 上面数据类型。
当 $data= json_decode($object, ture); //得到的则是数组。
$data= json_decode($json, ture);
本人使用的是第二种,简单也方便,打印数据
1 | print_array( $data ); |
这样就和平常的数组一样了,也方便使用了,例:
echo $data['data'][0]['traces'][0]['desc'];//[上海市] [嘉定]的震徽电子已收件 电话:暂无
分类:
PHP
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 字符编码:从基础到乱码解决