PHP忽略if语句,取消设置会话变量

时间:2013-02-02 13:19:53

标签: php session unset

我有一个PHP脚本,用于存储在会话变量中提交表单的URL,然后将其与当前页面url进行比较。如果它与会话中存储的不一样,它将被取消设置,至少它应该如何工作。问题是if语句用于检查两个url是否匹配seeems被忽略,并且会话变量无论如何都会被取消。

$compare_url_old = array_shift(explode(',', $_SESSION['search_page']));
$compare_url_new = array_shift(explode(',', $_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']));

if ($compare_url_new != $compare_url_old)
{
    unset($_SESSION['search_page']);
    unset($_SESSION['search_price_min']);
    unset($_SESSION['search_price_max']);
    unset($_SESSION['search_name']);
}

奇怪的是,如果我尝试在if语句中回显某些内容它可以正常工作,但由于某种原因,每次都会调用未设置的函数,不管结果如何。

1 个答案:

答案 0 :(得分:0)

问题解决了,事实证明这是我在代码上方忽略的东西,脚本运行正常。对不起。