在开发网站的时候饿哦们经常用cookie来保存用户的信息以及有效时间,用来记录用户的登录行为和用户的一些权限属性。在setcookie这个方法中我们只能保存一个键值对,而用户的信息有id、用户名、密码、权限等等,无法一同保存在cookie中。这里提供一个非常简单的方法去做这件事:
PHP自带两个函数:序列化和反序列化。
序列化函数:serialize序列化数组$str = serialize($arr); 将数组序列化成一个字符串变量
反序列化函数:--$arr = unserialize($str);
这两个函数实现了数组和字符串之间的互相转化。
在登录查询到对应的用户信息的时候,取出这个用户的信息(取出时默认是一个数组),将用户信息序列化成字符串保存到cookie中。在需要取用户数据的时候才从cookie中取出这个字符串将其反序列化。