Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP中会话中的不完整类_Php_Arrays_Class_Session_Constructor - Fatal编程技术网

PHP中会话中的不完整类

PHP中会话中的不完整类,php,arrays,class,session,constructor,Php,Arrays,Class,Session,Constructor,我的问题是,当我在会话中存储一个类时,结果是一个不完整的类 class Users { function __construct(){ FunctionsHelper::includeFiles( array( ADMINISTRATOR_MODEL_DIRECTORY . 'model.php', ADMINISTRATOR_MODEL_DIRECTORY . 'user.php'

我的问题是,当我在会话中存储一个类时,结果是一个不完整的类

class Users {

    function __construct(){
        FunctionsHelper::includeFiles(
            array(
                ADMINISTRATOR_MODEL_DIRECTORY . 'model.php',
                ADMINISTRATOR_MODEL_DIRECTORY . 'user.php'
            )
        );
    }

    public function setLoggedUser($user){       
        if (session_id() == "")
            session_start();
        $_SESSION['ATT_user'] = $user;
    }

    public function getLoggedUser(){
        if (session_id() == "")
            session_start();

        if (!isset($_SESSION['ATT_user'])) {
            return new User();
        }

        $loggedUser = $_SESSION['ATT_user'];
        $UserId = $logedUser->getUserId();
        if (empty($UserId)) {
            return new User();
        }

        return $loggedUser;
    }
}
问题是当我调用getLoggedUser方法时$_会话['ATT_user']存储必须恢复的用户对象。 问题是,在_构造函数中,我包含了加载用户类的文件,因此我不理解为什么会出现错误。FunctionsHelper::includeFiles函数包含文件,但如果我调用include函数作为getLoggedUser函数的第一行,$\u会话数组仍将包含不完整的对象。 不同的是,如果我在setLoggedUser中进行打印。$\u会话包含已完成的对象!! 谁能给我解释一下,帮帮我吗


我使用的是IIS 7而不是Apache。

在composer的帮助下使用类自动加载。您不必手动包含文件并避免此类问题。是否有其他不需要包含其他文件的选项?您可以实现自己的自动加载系统,请参阅: