序列化(serialize):
$data = array(
'name' => 'John Doe',
'age' => 30,
'city' => 'New York'
);
$serialized_data = serialize($data);
file_put_contents('data.txt', $serialized_data);
在上述例子中,serialize 函数将关联数组 $data 转换为字符串,并将其保存到名为 data.txt 的文件中。
反序列化(unserialize):
$serialized_data = file_get_contents('data.txt');
$unserialized_data = unserialize($serialized_data);
print_r($unserialized_data);
在这个例子中,file_get_contents 用于读取之前保存的序列化字符串,然后使用 unserialize 函数将其还原为原始的 PHP 数据结构。
请注意,serialize 和 unserialize 函数不仅限于数组,它们可以处理几乎所有 PHP 变量类型。
$obj = new stdClass();
$obj->name = 'Jane Doe';
$obj->age = 25;
$serialized_obj = serialize($obj);
$unserialized_obj = unserialize($serialized_obj);
print_r($unserialized_obj);
在这个例子中,我们序列化和反序列化了一个包含对象的示例。
需要注意的是,反序列化不应该用于不受信任的数据,因为它可能导致安全漏洞。只有信任来源的数据才应该被反序列化。
转载请注明出处:http://www.pingtaimeng.com/article/detail/3478/PHP