在函数内调用时,标头不起作用

时间:2017-04-18 21:00:04

标签: php function

我创建了一个名为public.php的php文件,并添加了一些函数来减少代码冗余。其中一项功能如下。

/**
 * Checks if there is a valid session and navigates to the login page if false.
 * @return boolean true if session valid.
 */
function checkSession_auto() {
    if (checkSession()) {
        return true;
    } else {
        //echo 'pass'; exit;
        header("location: accounts/login.php");
    }
}

我已使用checkSession()声明验证了false返回echo。这就是问题所在。

  

该页面未导航至login.php。为什么?

谢谢你的建议!

1 个答案:

答案 0 :(得分:1)

  

exit之后添加header($string)语句解决了问题,   阅读this comment

除非您在标题下没有任何代码(PHP或HTML),否则在发送位置标题后似乎必须exiting

header只是一行要求浏览器重定向的数据。页面的其余部分仍将由PHP提供,客户端可以通过简单地阻止header命令执行来查看。

资源;