在Moodle中,即使用户将登录名更改为,也可以通过编程方式找到登录用户的角色

问题描述 投票:0回答:1

假设老师登录了课程,我可以通过编程方式找出登录用户作为老师的角色,没问题

global $USER;
$context = context_course::instance($COURSE->id);
$roles = get_user_roles($context, $USER->id, false);
$role = key($roles);
$roleid = $roles[$role]->roleid;

假设老师选择以学生身份登录,由于登录的用户ID始终显示为TEACHER而不是学生,我如何根据登录的用户ID找出登录用户的当前角色?

基本来说,如果教师以学生身份登录,如何找出已登录用户的角色“登录为”] >>?

任何帮助将不胜感激

谢谢

假设老师登录了一个课程,我可以通过编程方式找出登录用户作为老师的角色,没有问题,全局$ USER; $ context = context_course :: instance($ COURSE-> id); $ roles ...

moodle
1个回答
1
投票
if (!empty($_SESSION['USER']->realuser)) {
    // Logged in as.
    $roles = get_user_roles($context, $_SESSION['USER']->realuser, false);
}
© www.soinside.com 2019 - 2024. All rights reserved.