我要求通过 PHP 脚本进行序列化和反序列化。只有有时我手动编辑数组(在 database.txt 中)。
问问题
1006 次
2 回答
2
您可以将数组导出为JSON(JavaScript 对象表示法)字符串,然后再对其进行解码。
您可以分别使用函数json_encode
和来做到这一点。json_decode
$a = array(
'a' => 1,
'b' => 2,
'c' => array(1,2,3));
file_put_contents('database.txt', json_encode($a));
// encoded: {a:1,b:2,c:[1,2,3]}
// ---
$a = json_decode(file_get_contents('database.txt'), TRUE);
// specify TRUE to parse objects as assoc. arrays ---^
请注意,所有这一切可能不是最好的主意(我有点担心您选择的文件名——如果您想要一个 DB,那么就使用一个 DB!(例如 sqlite))。
于 2012-11-24T16:59:08.700 回答
1
您应该看一下 JSON 格式。根据您要序列化的数据类型,这应该可以满足您的需求,并且它非常易于阅读且易于编辑。
特别是,您的数组仅限于包含数字、字符串、浮点数、布尔值或其他数组。但是,您既可以存储数字索引数组,也可以存储关联数组。
有关标准的更多信息,请查看http://www.json.org/,有关 php 函数,请参阅http://us2.php.net/json_encode和http://us2.php.net/ json_decode
于 2012-11-24T16:59:15.417 回答