Moodle3.5 ::课程的课程模块

时间:2018-07-10 09:35:56

标签: php moodle

获取课程的课程模块:

我正在尝试获取当前课程ID的课程模块。尝试使用print_r和var_dump提取数组值,而不是使用精确的字符串转换。

我正在从数组输出中寻找模块实例或模块ID和模块名称(modname)。

我想要课程中的课程模块,在自定义页面上显示课程名称和模块。

global $DB;
$course = $DB->get_record('course', array('id' => $courseid));
$info = get_fast_modinfo($course);
print_r($info);
//var_dump($info);

1 个答案:

答案 0 :(得分:0)

您需要的代码如下:

$modinfo = get_fast_modinfo($courseid);
foreach ($modinfo->get_cms() as $cminfo) {
    echo $cminfo->id.' ('.$cminfo->instance.'): '.$cminfo->get_formatted_name().'<br>';
}

看看lib / modinfolib.php,课程course_modinfo,详细了解可以在get_fast_modinfo()返回的对象上调用的函数。查看同一文件中的cm_info类,以详细了解get_cms()/ get_cm($ cmid)返回的对象。