当我们在开发过程中需要将json格式的数据转换成数组的形式,可以使用PHP中提供的json_decode()函数。下面,我来详细讲解如何将json格式的数据转换成数组,并分享两个示例。
1. 将json转换成数组
使用方法:
mixed json_decode(string $json, bool $assoc = false, int $depth = 512, int $options = 0 );
参数解释:
- $json:json字符串
- $assoc:当该参数为true时,将返回array而非object,默认为false
- $depth:设置最大深度,超过该深度的数组或对象会被转成字符串
- $options:传递给json_decode的选项,可选择从json_decode()中删除反斜杠字符,即 JSON_UNESCAPED_SLASHES
示例1:
<?php
// 定义json字符串
$json_str = '{"name":"zhangsan","age":20,"gendar":"men","is_married":false,"hobbies":["swimming","music","movie"],"contact":{"phone":"123456789","address":"beijing"}}';
// 将json字符串转换成数组
$data = json_decode($json_str);
// 打印输出数组
print_r($data);
?>
输出结果:
Array
(
[name] => zhangsan
[age] => 20
[gendar] => men
[is_married] =>
[hobbies] => Array
(
[0] => swimming
[1] => music
[2] => movie
)
[contact] => stdClass Object
(
[phone] => 123456789
[address] => beijing
)
)
示例2:
<?php
//定义json字符串
$json_str = '[{"name":"zhangsan","age":20,"is_married":false},{"name":"lisi","age":22,"is_married":true}]';
//将json字符串转换成数组
$data = json_decode($json_str, true);
//打印输出数组
print_r($data);
?>
输出结果:
Array
(
[0] => Array
(
[name] => zhangsan
[age] => 20
[is_married] =>
)
[1] => Array
(
[name] => lisi
[age] => 22
[is_married] => 1
)
)
上述示例中,分别演示了将json字符串转换成数组的方式,以及如何将json字符串中的数组转换成PHP中的数组。使用PHP内置的json_decode()函数,可以方便地将json格式的数据转换成数组,实现开发者自己想要的数据格式。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:php json转换成数组形式代码分享 - Python技术站