Uncaught Error: Cannot use object of type stdClass as array
Uncaught Error: Cannot use object of type stdClass as array
Fatal error: Uncaught Error: Cannot use object of type stdClass as array
$code = json_decode($src);
echo $code["items"];
var_dump
显示以下内容(截断):
object(stdClass)#7 (3) { ... }
我不知道 stdClass
是什么以及如何使用它。
编辑:
stdClass
是一个 class,它创建一个简单对象的实例。 classes 的属性将使用 ->
而不是 [...]
符号来访问。
根据 json_decode
的文档,简单地将第二个参数设置为 true
将导致结果为关联数组,它可以像数组一样依次访问。
在发布这个问题时,我没有尝试搜索如何解码 JSON - 因为这很简单而且我已经成功了。我刚刚遇到另一个错误(上图),但没有找到解决方法。我相信人们也有类似的问题,因为这个问题也得到了一些意见。
json_decode
函数有第二个参数专门用于此:将其设置为 true
将 return 一个关联数组,其中有一个对象(在 { "curly": "braces" }
) 在 JSON.
为了说明这一点:
$a = json_decode('{ "b": 1 }', false);
var_dump($a->b);
// prints: int(1)
$a = json_decode('{ "b": 1 }', true);
var_dump($a['b']);
// prints: int(1)
请注意访问值的不同之处。
使用json_decode($src, true)
获取关联数组。
这是首选方式,因为目前您会得到混合的数组和对象,并且您可能会在疯狂的房子里尝试使用这些:)
或者使用 ->
运算符获取对象的属性。
目前您的商品位于:
$code->items[0]->pagemap->cse_image[0]->src
Fatal error: Uncaught Error: Cannot use object of type stdClass as array
$code = json_decode($src);
echo $code["items"];
var_dump
显示以下内容(截断):
object(stdClass)#7 (3) { ... }
我不知道 stdClass
是什么以及如何使用它。
编辑:
stdClass
是一个 class,它创建一个简单对象的实例。 classes 的属性将使用 ->
而不是 [...]
符号来访问。
根据 json_decode
的文档,简单地将第二个参数设置为 true
将导致结果为关联数组,它可以像数组一样依次访问。
在发布这个问题时,我没有尝试搜索如何解码 JSON - 因为这很简单而且我已经成功了。我刚刚遇到另一个错误(上图),但没有找到解决方法。我相信人们也有类似的问题,因为这个问题也得到了一些意见。
json_decode
函数有第二个参数专门用于此:将其设置为 true
将 return 一个关联数组,其中有一个对象(在 { "curly": "braces" }
) 在 JSON.
为了说明这一点:
$a = json_decode('{ "b": 1 }', false);
var_dump($a->b);
// prints: int(1)
$a = json_decode('{ "b": 1 }', true);
var_dump($a['b']);
// prints: int(1)
请注意访问值的不同之处。
使用json_decode($src, true)
获取关联数组。
这是首选方式,因为目前您会得到混合的数组和对象,并且您可能会在疯狂的房子里尝试使用这些:)
或者使用 ->
运算符获取对象的属性。
目前您的商品位于:
$code->items[0]->pagemap->cse_image[0]->src