Heim > Backend-Entwicklung > PHP-Tutorial > PHP“Cannot use object of type stdClass as array”

PHP“Cannot use object of type stdClass as array”

WBOY
Freigeben: 2016-06-23 13:41:23
Original
910 Leute haben es durchsucht

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

错误:
Cannot use object of type stdClass as array

产生原因:

+展开

-PHP

    $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 就可以了。


参考手册:json_decode 

Return Values:Returns an object or if the optional assoc parameter is TRUE, an associative array is instead returned.

返回值默认是JSON对象,当第二个可选参数是TRUE的时候,则返回的是数组


Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage