将带方括号的字符串转换为PHP数组


Convert String with square brackets to PHP Array

我有一个字符串,值在括号里,用逗号分隔,就像数组字符串:

的例子:

[[["Name" , "ID"] , [12]] , ["Test" , 78] , 0]

如何将此字符串转换为PHP数组?

这是一个JSON字符串表示的数组,使用json_decode():

$array = json_decode($string);    
print_r($array);

收益率:

Array
(
    [0] => Array
        (
            [0] => Array
                (
                    [0] => Name
                    [1] => ID
                )
            [1] => Array
                (
                    [0] => 12
                )
        )
    [1] => Array
        (
            [0] => Test
            [1] => 78
        )
    [2] => 0
)

如果它有任何{ },它将是一个对象,并在PHP中解码为stdClass对象,除非你将true传递给json_decode()来强制一个数组。

因为它的结构是PHP数组(从PHP 5.4开始),所以这也可以工作(不要在不可信的数据上使用eval)。绝对没有理由这样做,这只是为了说明:

eval("'$array = $string;");
print_r($array);