2013-08-12 12 views

答えて

9

あなたはlib/datalib.php内で定義されたget_courses()機能を使用することができ、あなたがMoodleの内で実行されるコードを書いていると仮定。たとえば、

<?php 
require_once(PATH_TO_MOODLE_ROOT . '/config.php'); 
$courses = get_courses(); 
print_r($courses); 

は、返された配列のデータダンプを出力し、Moodleサイトのすべてのコースの詳細を表示します。この例は、本番サイトで使用することは明らかに不適切です。

lib/datalib.phpで関数の定義を確認すると、結果セットを特定のフィールドに制限したり、並べ替え順序を制御したりするオプションが表示されます。

+0

このスクリプトは、 '(真、 'CLI_SCRIPT')を定義行で始める必要があります;'であるために走る – shacker

1

は、このファイル

require_once($CFG->dirroot . '/lib/coursecatlib.php'); 

メニューリスト内のすべてのコースを取得するには、この機能を使用することを含みます。

$allcourses = coursecat::get(0)->get_courses(array('recursive' => true)); 

var_dump($allcourses);exit; 
0

登録したコースのみを学生に表示する場合は、次の方法を使用できます。

require_once($CFG->dirroot.'/blocks/course_overview/locallib.php'); 
global $USER,$DB; 
$courses = enrol_get_users_courses($USER->id, true); 

OR あなたはすべてのコースを一覧表示したい場合は...

global $DB; 
$query = "SELECT id, fullname, shortname from {course}"; 
$courselist = $DB->get_records_sql($query); 
foreach ($courselist as $course) { 
    echo $course->fullname; 
} 

おかげ

関連する問題