84669 Lernen von Personen
152542 Lernen von Personen
20005 Lernen von Personen
5487 Lernen von Personen
7821 Lernen von Personen
359900 Lernen von Personen
3350 Lernen von Personen
180660 Lernen von Personen
48569 Lernen von Personen
18603 Lernen von Personen
40936 Lernen von Personen
1549 Lernen von Personen
1183 Lernen von Personen
32909 Lernen von Personen
Ich möchte die Benutzer jeder Kategorie gewinnen. Ich verwende Moodle Version 3.8. Gibt es eine Möglichkeit, Benutzer nach Kategorien zu ermitteln?
如果您正在寻找 Moodle 函数来执行此操作,那么您可以调用:
$cat = core_course_category::get($categoryid); $courseids = $cat->get_courses(['recursive', 'idonly']); $userids = []; foreach ($courseids as $courseid) { $context = context_course::instance($courseid); $courseusers = get_enrolled_users($context, '', 0, 'u.id'); $userids = array_merge($userids, array_keys($courseusers)); }
然而,这是非常低效的 - 你最好编写一个自定义 SQL 查询,根据课程 ID 列表,它将生成所有这些课程的注册用户列表(看看代码内部) get_enrolled_users() 来了解如何构建这样的 SQL 查询)。
如果您正在寻找 Moodle 函数来执行此操作,那么您可以调用:
然而,这是非常低效的 - 你最好编写一个自定义 SQL 查询,根据课程 ID 列表,它将生成所有这些课程的注册用户列表(看看代码内部) get_enrolled_users() 来了解如何构建这样的 SQL 查询)。