$subprompt = serialize($errors);
header('Location: landingpage.php?success=false&prompt=' . $prompt . '&subprompt=' . $subprompt);
然后
if(isset($_GET['subprompt'])){
$subprompt = $_GET['subprompt'];
$subprompt = unserialize($subprompt);
print_r($subprompt);
}
当我回显$ _GET变量时,我得到所有数据,但是当我尝试反序列化时,我什么也得不到;一个空白变量。
答案 0 :(得分:1)
$subprompt = urlencode(serialize($errors));
答案 1 :(得分:1)
urlencode就是为了这个目的。
$url_string = urlencode(serialize($errors));
答案 2 :(得分:0)
要避免编码问题,您应该将值发送为base64_encode(serialize($subprompt));
。结果将是大约33%的字符串,因此请记住不要超过最大网址长度。
答案 3 :(得分:0)
试试这个: 除了urlencode之外,您还可以尝试base64编码数据。有点“漂亮”的网址:)
$subprompt = base64_encode(serialize($errors));
header('Location: landingpage.php?success=false&prompt=' . $prompt . '&subprompt=' . $subprompt);
和
if(isset($_GET['subprompt'])){
$subprompt = $_GET['subprompt'];
$subprompt = unserialize(base64_decode($subprompt));
print_r($subprompt);
}