首页 > 编程 > PHP > 正文

PHP数组和对象相互转化,stdClass Object转array

2020-03-22 18:55:45
字体:
来源:转载
供稿:网友

数组转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);

结果: {"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=>$html' target='_blank'>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);

本人使用的是第二种,简单也方便,打印数据

print_array($data);

这样就和平常的数组一样了,也方便使用了,例:

echo $data['data'][0]['traces'][0]['desc'];//[上海市] [嘉定]的震徽电子已收件 电话:暂无

更多相关教程请访问 php编程从入门到精通全套视频教程

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表