0

如何将字符串$string = 'array(array("a"=>"content"))'; (<--这是字符串)转换为数组,如下所示:

array(1) { [0]=> array(1) { ["a"]=> string(7) "content" } }

我将构建一个函数来在线运行序列化:

输入:$string = 'array(array(1))'; echo serialize($string);

结果:a:1:{i:0;a:1:{i:0;i:1;}} 不是 s:16:"array(array(1)))";

你打电话:$returnValue = serialize('array(array(1))');

4

2 回答 2

4

你/可以/使用eval()

$string = 'array(array("a"=>"content"))';
eval("\$array = $string;");
print_r($array);

输出:

Array
(
    [0] => Array
        (
            [a] => content
        )

)

但是,如果您接受用户输入,则不应使用eval().

另外,请考虑使用json_encode()/json_decode()代替。

或者,要将数组存储在字符串中,您可以使用serializeunserialize

于 2013-08-10T14:24:19.323 回答
0

评价?检查http://php.net/manual/en/function.eval.php

请注意手册显示的警告...

于 2013-08-10T14:19:56.760 回答