如何排除受文件中主要规则影响的函数?

时间:2014-10-21 13:58:19

标签: php

我在个人资料php文件的开头有以下行:

        if (!isset($_SESSION['LoggedIn']) || $_SESSION['LoggedIn'] == FALSE)
        {
            $this->content = Template::Load('error', array('error_message' => Template::GetLangVar('USER_NOT_LOGGED_IN')));
            return;
        }
.... A LOT OF FUNCTIONS BELOW ...........

因此,如果未登录的用户尝试访问任何子功能,则会出现错误。 但是,我最近在这个文件中添加了一个需要特殊处理的功能。 因此,如果他们尝试在相同的配置文件php文件中访问此函数而不受主要检查影响(如果已登录),则应该重定向它们而不是此错误消息。我如何做到这一点,以排除一个功能受此影响? 顺便说一句:如上所述,所有函数都在同一个php脚本文件中。

1 个答案:

答案 0 :(得分:0)

如果没有剩下的代码,很难指出究竟需要重构的内容。如果您想经常检查或不检查用户是否已登录,请将该检查的代码包装在拟合函数/方法中(例如isLoggedIn())并返回if语句的条件。

然后您可以编辑代码以使用if (isLoggedIn()) {}并在不同情况下执行不同的代码。