在PHP中序列化函数

时间:2014-03-18 20:47:37

标签: php serialization get query-string

我正在尝试使用URL在PHP中序列化数组,然后使用$ _GET将其取回,但我的结果不匹配。

我这样做:

$arr = array(
    'name' => 'Josh',
    'age' => '12',
);

echo 'www.someurl.com/page.php?'.serialize($arr);

然后

var_dump($_GET);
//array(1) { ["a:2:{s:4:"name";s:4:"Josh";s:3:"age";s:2:"12";}"]=> string(0) "" }

但是我没有得到与

相同的结果
var_dump($arr);
//array(2) { ["name"]=> string(4) "Josh" ["age"]=> string(2) "12" }

我做错了什么,或者我该怎么做?

1 个答案:

答案 0 :(得分:2)

您正在寻找的是http_build_query()。它从提供的关联(或索引)数组生成URL编码的查询字符串。

$arr = array(
    'name' => 'Josh',
    'age' => '12',
);

echo 'www.someurl.com/page.php?'.http_build_query($arr);
// www.someurl.com/page.php?name=Josh&age=12