// 一个复杂的数组
$myvar = array(
'hello',
42,
array(1,'two'),
'apple'
);
// 序列化
$string = serialize($myvar);
echo $string;
/* 输出
a:4:{i:0;s:5:"hello";i:1;i:42;i:2;a:2:{i:0;i:1;i:1;s:3:"two";}i:3;s:5:"apple";}
*/
// 反序例化
$newvar = unserialize($string);
print_r($newvar);
/* 输出
Array
(
[0] => hello
[1] => 42
[2] => Array
(
[0] => 1
[1] => two
)
[3] => apple
)
*/
在PHP5.2以后,PHP开始支持JSON,你可以使用 json_encode() 和 json_decode() 函数,但是这两个函数有致命的缺点:如果数据结构过于复杂,会造成数据丢失。
因此,如果确定数据不是很复杂,可以使用json,如果不确定数据的复杂程度,用serialize;