这篇文章主要介绍“php json如何转换成对象数组对象”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“php json如何转换成对象数组对象”文章能帮助大家解决问题。
将json数据转换成对象
使用json_decode()函数将json数据转换成对象,如下所示:
$json_string = '{"name":"Tom","age":20}'; $obj = json_decode($json_string);
上述代码将json格式的字符串转换成对象$obj。注意, json_decode()函数默认将json数据转换成PHP的stdClass对象。
也可以将json数据转换成PHP的关联数组,如下所示:
$json_string = '{"name":"Tom","age":20}'; $arr = json_decode($json_string,true);
上述代码将json数据转换成关联数组$arr。在json_decode()函数中传递第二个参数为true,就可以将json数据转换成PHP的关联数组。
将json数据转换成数组
要将json数据转换成数组,只需在json_decode()函数中设置第二个参数为true即可,如下所示:
$json_string = '[{"name":"Tom","age":20},{"name":"Jane","age":19}]'; $arr = json_decode($json_string,true);
上述代码将json数组数据转换成PHP的关联数组$arr。
将json数据转换成对象数组
将json数据转换成对象数组同样需要在json_decode()函数中设置第二个参数为true,但是转换后得到的是对象数组,如下所示:
$json_string = '[{"name":"Tom","age":20},{"name":"Jane","age":19}]'; $arr_obj = json_decode($json_string);
上述代码将json数组数据转换成对象数组$arr_obj。在json_decode()函数中不传递第二个参数,就可以将每一个json数据项转换成对象。
可以使用foreach循环遍历对象数组,如下所示:
foreach ($arr_obj as $item) { echo "name: " . $item->name . "; age: " . $item->age . " "; }
上述代码可以输出对象数组中的每一个对象的name和age属性。