簡體   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