Fatal Error: Can't use object 'stdClass' as array 大师帮看看郁闷死了 本帖最后由 baikujingling 于 2014-09-15 20:04:51 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 print_r($resp); 看到的是什么? 由$o = json_decode('{"a":{"b":[1,2,3]}}');echo $o['a']['b'][0];报错 Fatal error: Cannot use object of type stdClass as array 可推知你是把对象当做数组访问了要这样echo $o->a->b[0]; 也可这样$o = json_decode('{"a":{"b":[1,2,3]}}',true);echo $o['a']['b'][0]; 我在帮楼主分析出错的原因,你捣什么乱也可这样$o = json_decode('{"a":{"b":[1,2,3]}}',true);echo $o['a']['b'][0]; 也可这样$o = json_decode('{"a":{"b":[1,2,3]}}',true);echo $o['a']['b'][0];这个你也没说原因。应该是 json_decode 总是返回一个PHP对象 而不是数组 年轻人,想当然是大忌!楼主只有$resp = $c->execute($req);//print_r($resp);$item=$resp["item_list"]['sp_item'][0];并没有给出 print_r($resp) 的结果你如何就能断定他就是 json 解码的结果呢?我用 json 模拟一个出错的场景,并不表示是楼主的真实情况只是说明这种错误可能在什么情况下出现况且我也说了原因:你是把对象当做数组访问了也可这样$o = json_decode('{"a":{"b":[1,2,3]}}',true);echo $o['a']['b'][0];这个你也没说原因。应该是 json_decode 总是返回一个PHP对象 而不是数组 也可这样$o = json_decode('{"a":{"b":[1,2,3]}}',true);echo $o['a']['b'][0];这个你也没说原因。应该是 json_decode 总是返回一个PHP对象 而不是数组sorry sorry 没看LZ的代码 只看到你的 因为LZ的问题就是$o = json_decode('{"a":{"b":[1,2,3]}}');然后安装数组方式访问出错 关于PHP操作Mysql查询的引号问题 怎么样用json_decode出二维数组呢? 验证码问题。 非计算机专业,一年ASP.NET开发经验,如果从新学习PHP,要多久能跟着做项目? 小女子求助各位大哥 如何当钩选checkbox的时候,能够从数据库中自动产生 select small_areaid的 option 列表 怎么让APACHE支持URL后面跟?name=中文? 怎样做一个论坛需要注意什么? php+mysql, apache 如何用php做一个对文章进行全文搜索的程序 php怎么访问本地根目录外的文件? 关于PHP对数据库调用问题 变量引用计数问题
$o = json_decode('{"a":{"b":[1,2,3]}}');
echo $o['a']['b'][0];
报错 Fatal error: Cannot use object of type stdClass as array 可推知你是把对象当做数组访问了
要这样
echo $o->a->b[0];
也可这样
$o = json_decode('{"a":{"b":[1,2,3]}}',true);
echo $o['a']['b'][0];
也可这样
$o = json_decode('{"a":{"b":[1,2,3]}}',true);
echo $o['a']['b'][0];
也可这样
$o = json_decode('{"a":{"b":[1,2,3]}}',true);
echo $o['a']['b'][0];
这个你也没说原因。应该是 json_decode 总是返回一个PHP对象 而不是数组
楼主只有
$resp = $c->execute($req);
//print_r($resp);
$item=$resp["item_list"]['sp_item'][0];
并没有给出 print_r($resp) 的结果
你如何就能断定他就是 json 解码的结果呢?
我用 json 模拟一个出错的场景,并不表示是楼主的真实情况
只是说明这种错误可能在什么情况下出现况且我也说了原因:你是把对象当做数组访问了也可这样
$o = json_decode('{"a":{"b":[1,2,3]}}',true);
echo $o['a']['b'][0];
这个你也没说原因。应该是 json_decode 总是返回一个PHP对象 而不是数组
也可这样
$o = json_decode('{"a":{"b":[1,2,3]}}',true);
echo $o['a']['b'][0];
这个你也没说原因。应该是 json_decode 总是返回一个PHP对象 而不是数组
sorry sorry 没看LZ的代码 只看到你的 因为LZ的问题就是$o = json_decode('{"a":{"b":[1,2,3]}}');然后安装数组方式访问出错