首页后端开发PHPphp如何将json转成数组对象

php如何将json转成数组对象

时间2023-07-07 08:02:01发布访客分类PHP浏览720
导读:这篇文章主要介绍“php如何将json转成数组对象”,在日常操作中,相信很多人在php如何将json转成数组对象问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”php如何将json转成数组对象”的疑惑有所帮助!...
这篇文章主要介绍“php如何将json转成数组对象”,在日常操作中,相信很多人在php如何将json转成数组对象问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”php如何将json转成数组对象”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

使用 json_decode() 转换为数组

假设我们有以下 JSON 字符串:

{

"name":"Tom",
"age":30,
"hobbies":["reading","running","swimming"],
"address":{

"city":"Beijing",
"country":"China"
}

}

现在我们需要将其转换为 PHP 数组。我们可以使用 json_decode() 函数,并将第二个参数设置为 true,以表示将 JSON 字符串转换为关联数组,代码如下:

$jsonString='{
"name":"Tom","age":30,"hobbies":["reading","running","swimming"],"address":{
"city":"Beijing","country":"China"}
}
    ';
    
$assocArray=json_decode($jsonString,true);
    
print_r($assocArray);
    

输出结果为:

Array
(
[name]=>
    Tom
[age]=>
    30
[hobbies]=>
    Array
(
[0]=>
    reading
[1]=>
    running
[2]=>
    swimming
)

[address]=>
    Array
(
[city]=>
    Beijing
[country]=>
China
)

)

可以看到,我们成功将 JSON 字符串转换为了 PHP 数组,并打印了其结果。

使用 json_decode() 转换为对象

除了将 JSON 字符串转换为 PHP 数组外,我们还可以将其转换为 PHP 对象。同样地,我们可以使用 json_decode() 函数,并将第二个参数设置为 false 或省略,以表示将 JSON 字符串转换为对象,代码如下:

$jsonString='{
"name":"Tom","age":30,"hobbies":["reading","running","swimming"],"address":{
"city":"Beijing","country":"China"}
}
    ';
    
$obj=json_decode($jsonString);
    
var_dump($obj);

输出结果为:

object(stdClass)#1(4){
    
["name"]=>
    
string(3)"Tom"
["age"]=>
    
int(30)
["hobbies"]=>

array(3){
    
[0]=>
    
string(7)"reading"
[1]=>
    
string(7)"running"
[2]=>

string(8)"swimming"
}
    
["address"]=>

object(stdClass)#2(2){
    
["city"]=>
    
string(7)"Beijing"
["country"]=>

string(5)"China"
}

}

可以看到,我们成功将 JSON 字符串转换为了 PHP 对象,并打印了其结果。

使用 json_decode() 转换为对象数组

在某些情况下,我们需要将 JSON 字符串转换为多个 PHP 对象。在这种情况下,我们可以先将其转换为 PHP 数组,然后使用数组映射函数将其转换为 PHP 对象数组。代码如下:

$jsonString='[{
"name":"Tom","age":30}
,{
"name":"Alice","age":25}
,{
"name":"Bob","age":40}
    ]';
    
$array=json_decode($jsonString,true);

$objArray=array_map(function($item){
    
return(object)$item;

}
    ,$array);
    
print_r($objArray);
    

输出结果为:

Array
(
[0]=>
    stdClassObject
(
[name]=>
    Tom
[age]=>
    30
)

[1]=>
    stdClassObject
(
[name]=>
    Alice
[age]=>
    25
)

[2]=>
    stdClassObject
(
[name]=>
    Bob
[age]=>
    40
)

)

可以看到,我们成功将 JSON 字符串转换为了 PHP 对象数组,并打印了其结果。

到此,关于“php如何将json转成数组对象”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!

phpjson

若转载请注明出处: php如何将json转成数组对象
本文地址: https://pptw.com/jishu/293759.html
Python怎么打印字典中的所有键值对 Java怎么调用存储过程

游客 回复需填写必要信息