PHP JSON出错:Cannot use object of type stdClass as array解决方法

yipeiwu_com6年前PHP代码库

php再调用json_decode从字符串对象生成json对象时,如果使用[]操作符取数据,会得到下面的错误:

复制代码 代码如下:

Cannot use object of type stdClass as array

产生原因:
复制代码 代码如下:

$res = json_decode($res);
$res['key']; //把 json_decode() 后的对象当作数组使用。

解决方法(2种):

1、使用 json_decode($d, true)。就是使json_decode 的第二个变量设置为 true。
2、json_decode($res) 返回的是一个对象, 不可以使用 $res['key'] 进行访问, 换成 $res->key 就可以了。

相关文章

PHP+apc+ajax实现的ajax_upload上传进度条代码

PHP+apc+ajax实现的ajax_upload上传进度条代码

本文实例讲述了PHP+apc+ajax实现的ajax_upload上传进度条代码。分享给大家供大家参考,具体如下: 上传进度条是怎么实现的呢?原理是怎么样的呢?当我们浏览...

Discuz 模板引擎的封装类代码

主要功能说明 去掉了 Discuz 语言包的功能  移植 Discuz 模板中所有的功能  添加了自动更新缓存及生命周期功能&...

php 上传文件类型判断函数(避免上传漏洞 )

复制代码 代码如下:function ($file_name,$pass_type=array('jpg','jpeg','gif','bmp','png')){ $yx_file =...

PHP冒泡算法详解(递归实现)

实现 复制代码 代码如下: /*     冒泡算法(递归实现) */ function maoPao($array, $index=0) {  &...

PHP跳转页面的几种实现方法详解

•PHP页面跳转一、header()函数header()函数是PHP中进行页面跳转的一种十分简单的方法。header()函数的主要功能是将HTTP协议标头(header)输出...