繁体   English   中英

Moodle:在用户登录时获取用户ID

[英]Moodle: Getting user id when a user is logged in

为了保留我的网站的登录统计信息,我需要保留用户登录和注销的时间。 为了做到这一点,我利用了穆德尔的观察者:

$observers = array(
    array(
        'eventname'=>'\core\event\user_loggedin',
        'callback' => 'observer::recordloginTime'
    );
);

以及以下事件侦听器类:

defined('MOODLE_INTERNAL') || die();

class observer 
{
    public static function recordloginTime()
    {
        global $DB;
        //Do stuff here
    }

    public static function recordLogoutTime()
    {
        global $DB;
        //Do stuff here
    }
}

因此,现在我想访问当前的会话ID和当前的用户ID,这样我就可以记录用户登录和注销的时间。 我如何访问此信息,我想这将是某种全局变量,但我不知道它是什么。

您可以使用$ USER全局获取当前用户记录。 另外,每个事件观察器函数都将触发它的事件的副本传递给您-与event.php中列出的类相同的类(例如\\ core \\ event \\ user_loggedin)。 因此,您应该能够只使用$ event-> userid(假设您已将函数param $ event称为)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM