感谢您查看我的问题。反序列化cookie变量
的代码:
$array = array("zero","one","true","three");
echo $beforecookie = serialize($array); //<<-- IT WORKS;
print_r(unserialize($beforecookie)); //<<--IT WORKS
setcookie('mycookie', $beforecookie, time()+3600);
echo $aftercookie = $_COOKIE['mycookie']; // <<-- it works perfectly same with $beforecookie
$data = unserialize($aftercookie);
print_r($data); //<<--RETURN NOTHING (the problem)
var_dump($data); //<<-- RETURN bool(false);
的串(从阵列串行化),我从饼干有不能被解序列化;为什么?使用serialize()将它设置为cookie后,如何返回数组?或者我错过了什么?
感谢您的帮助。
** ** NEVER饼干解序列化数据(或者可以由用户操纵任何其他字符串)!这是一个重大的安全漏洞。 – ThiefMaster 2013-03-21 13:22:08
您是否有任何反序列化错误?检查日志 – sectus 2013-03-21 13:24:56
@ThiefMaster,但它有可能吗? – egig 2013-03-21 13:26:05