PHP json_encode 变量如何转换成数组?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP json_encode 变量如何转换成数组?相关的知识,希望对你有一定的参考价值。
使用一个php API,返回一组数据,使用如下命令 $data= json_encode($response); echo $data; 得到结果: "success":true,"a":"1","b":"2","c":false,"d":false 或者"success":false,"a":"1","b":"2","c":false,"d":false 我想执行如下判断,如果上面结果中 success是true,输出数组变量a,success是false,输出数组变量b,类似如下代码: if ($data->success) $e = $data->a; echo $e; else $e = $data->b; echo $e; 请问如何把变量$data="success":true,"a":"1","b":"2","c":false,"d":false转换成数组?或者让上述代码正确运行?
参考技术A 1json_decode(json数据, true); //得到一个数组json_encode()函数和json_decode()是一对函数
作用刚好相反
一个是将数组转换成json数据
一个是将json数据转换成数组
PHP二维数组转换成一维数组,一个变量多个二维数组转换成一维数组,PHP二维数组(或任意维数组)转换成一维数组的方法汇总,array_reduce(); array_walk_recursive()
方法汇总:
1、 array_reduce函数法
//用array_reduce()函数是较为快捷的方法: $result = array_reduce($user, function ($result, $value) { return array_merge($result, array_values($value)); }, array())
2、 array_walk_recursive函数法
//用array_walk_recursive()函数就非常灵活,可以把任意维度的数组转换成一维数组。 $result = []; array_walk_recursive($user, function($value) use (&$result) { array_push($result, $value); });
3、 array_map函数法
//用array_map和array_reduce函数的方法类似,如下: $result = []; array_map(function ($value) use (&$result) { $result = array_merge($result, array_values($value)); }, $user);
内容详解:
以上是关于PHP json_encode 变量如何转换成数组?的主要内容,如果未能解决你的问题,请参考以下文章