将数组字符串转换为数组

时间:2013-06-28 00:14:22

标签: php arrays json

我想转换像

这样的数组字符串
[["a","b",["c1","c2"]],"d",["e1","e2"]]

进入PHP中的数组。

有没有办法做到这一点?

2 个答案:

答案 0 :(得分:4)

提供字符串是有效的JSON - 因此可以使用json_decode将其转换为真实(PHP)数组。

几乎直接从文档中获取(只更改了字符串):

$json = '[["a","b",["c1","c2"]],"d",["e1","e2"]]';
var_dump(json_decode($json));

对于这种情况,它比使用其他代码评估程序(即eval)破解它更简洁,更安全,并且比编写自定义解析代码更简单。

答案 1 :(得分:0)

How to "flatten" a multi-dimensional array to simple one in PHP?How to Flatten a Multidimensional Array?

可能重复

对我来说最简单/最好的解决方案是

function flatten(array $array) {
    $return = array();
    array_walk_recursive($array, function($a) use (&$return) { $return[] = $a; });
    return $return;
}