php中json如何转为对象

  介绍

这篇文章主要介绍php中json如何转为对象,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

php json转为对象的方法:首先创建一个php示例文件,然后用“get_object_vars”把类的类型转换成数组;最后用foreach遍历即可。

<强> php json字符串转为数组或对象

从网上查到的方法是用get_object_vars把类类型转换成数组然后在用foreach,遍历即可

array 美元;=,get_object_vars($测试);   $ json=, & # 39; [{“id":“1“,“name":“\ u5f20 \ u96ea \ u6885",“age":“27“,“subject":“\ u8ba1 \ u7b97 \ u673a \ u79d1 \ u5b66 \ u4e0e \ u6280 \ u672f"}, {“id":“2“,“name":“\ u5f20 \ u6c9b \ u9716",“age":“21”、“subject":“\ u8f6f \ u4ef6 \ u5de5 \ u7a0b"}] & # 39;;

首先要用json_decode对json格式的字符串进行编码,

,,,,students 美元;=,json_decode (json)美元;

直接在php文件用美元学生:

,,,,(i=0; i<美元计数(学生)美元;美元我+ +){   ,,,,,,,,echo “姓名:“。学生美元[$ i][& # 39;名字# 39;]!”年龄:“。学生美元[$ i][& # 39;年龄# 39;]!”专业:“。学生美元[$ i][& # 39;主题# 39;]!”& lt; br/在“;   ,,,}

则报错如下:

Fatal 错误   :Cannot  use  objectof  type  stdClass  as  array 拷贝;   D: \ wamp \ www \ test.php   提醒line    18

这时候打印一美元下学生:

var_dump(学生)美元;

会输出:

阵列(2),{   ,,,,,,,[0]=比;   ,,,,,,,对象(stdClass) # 2, (4), {   ,,,,,,,,,,,,(“id")=祝辞,字符串(1)“1”;   ,,,,,,,,,,,,(“name")=祝辞,字符串(9)“张雪梅“;   ,,,,,,,,,,,,(“age")=祝辞,字符串(2)“27”;   ,,,,,,,对象(stdClass) # 3,(4),{,,,,,,,,,,,,,,,,,,,,,,,,,,,,,这个就说明转换的json字符串转为对象而非数组,请看下面的红色背景字   ,,,,,,,,,,,,(“subject")=祝辞字符串(24),“计算机科学与技术”;   ,,,,,,,}   ,,,,,,,[1]=比;   ,,,,,,,,,,,(“id")=祝辞,字符串(1)“2”;   ,,,,,,,,,,,(“name")=祝辞,字符串(9)“张沛霖,   ,,,,,,,,,,,(“age")=祝辞,字符串(2)“21”;   ,,,,,,,,,,(“subject")=祝辞,字符串(12),“软件工程“;   ,,,,,,,}   ,,,}

可见,返回的结果是对象而非数组。应以对象形式访问:

,foreach (students 美元;as  obj美元){   ,,,,,,,,echo “姓名:“。obj→美元名字!”年龄:“。obj→美元时代!”专业:“。obj→美元主题!”& lt; br/在“;   ,,,}

输出结果为:

姓名:张雪梅,年龄:27,专业:计算机科学与技术
,,姓名:张沛霖,年龄:21,专业:软件工程

和<>强json_decode (json字符串$(美元bool assoc])

说明:接受一个json格式的字符串并且把它转换为PHP变量。【】

json_decode可接收两个参数:

json:待解码的json字符串 格式的字符串。

<强>协会:当该参数为真时,将返回数组而非对象。

students 美元;=,json_decode (json美元,真的);

这时打印一美元下学生:

,,,,var_dump(学生)美元;

输出:

阵列(2),{   ,,,,,,,[0]=比;   ,,,,,,,阵列(4),{   ,,,,,,,,,,,(“id")=祝辞,字符串(1)“1”;   ,,,,,,,,,,,(“name")=祝辞,字符串(9)“张雪梅“;   ,,,,,,,,,,,(“age")=祝辞,字符串(2)“27”;   ,,,,,,,,,,,(“subject")=祝辞字符串(24),“计算机科学与技术”;   ,,,,,,,}   ,,,,,,,[1]=比;   null   null   null   null   null   null   null   null   null   null   null   null   null   null

php中json如何转为对象