PHP 反序列化 Javascript 序列化的字符串

PHP Unserialize Javascript serialized string

美好的一天,

我得到了一个新脚本(对我来说就是),它允许您创建可拖动的树视图。

树结构的顺序可以改变也可以存储。 我设法发送和获取更新的结构。

但是我还没有成功反序列化字符串。 在我要编写自己的逻辑来解码数组之前,我想知道 PHP 是否默认知道一些功能来解决这个问题?

例子

我拥有的字符串:

spans-divs[0][id]=null&spans-divs[1][id]=null&spans-divs[1][children][0][id]=null&spans-divs[1][children][0][children][0][id]=null&spans-divs[2][id]=null&spans-divs[3][id]=null

生成这个字符串的代码:

serialized[0].hash

我希望有人能告诉我我做错了什么。或者,如果这甚至是一个可用的结构。

提前致谢

备注 PHP 将结果 bing 写入名为 test.txt

的文件

当我尝试获得结果时,我会这样尝试:

<?php
$cont   = file_get_contents('test.txt');
$Str    = parse_str($cont);
echo '->'.$Str.'<-';
?>

这会产生:>< 因此是一个空字符串。

以下是可行的解决方案:

<?php
$cont   = file_get_contents('test.txt');
parse_str($cont, $Str);
echo print_r($Str);
?>

(* 从中得出的数组实际上毫无用处 *) 但谢谢

这就是您所需要的:

$arr = [];
$string = "spans-divs[0][id]=null&spans-divs[1][id]=null&spans-divs[1][children][0][id]=null&spans-divs[1][children][0][children][0][id]=null&spans-divs[2][id]=null&spans-divs[3][id]=null";
parse_str($string, $arr);
var_dump($arr);

来源:http://php.net/manual/en/function.parse-str.php