moodle php代码解读_Moodle插件moodle 二次开发基础知识一
Moodle作為一個主流的開源網絡課程管理系統,以其簡單而清晰的使用方式和靈活的擴展空間贏得了多數人的青睞。它解決了大部分信息化學習和課程管理的共同問題(課程設計、發布、組織、作業、測試、統計、評價等) ,能夠不加任何修改就能夠進行實際應用。
Moodle數據庫模型
Moodle的數據庫模型經過幾年的發展已經很復雜,為了減少這種復雜關系帶來的混亂,它采用了這樣的命名方式。如: mdl_course_categories,其中“mdl_”是所有系統表格的前綴,course代表屬于course的模塊,categroies代表課程分類表,這樣既可以保證清晰的表述,又可以避免不同模塊之間數據表格的重名。可以利用DBDesigner4(一種免費的數據庫設計軟件,可以從http://fabforce.net/dbdesigner4/下載)將Moodle數據庫導出成XML文件,并進行分析。Moodle提供了ADODB數據訪問抽象層來進行數據庫的訪問,所以我們不需要直接編寫訪問數據庫的代碼,只要通過抽象層的方法即可。
Moodle data(Moodle數據)
Moodle數據是用戶上傳內容的文件存儲位置記錄,Moodle數據也存儲登錄到該系統用戶的會話數據(sessions data),如果基于文件的會話(sessions)正在使用。
Moodle數據在文件夾中的組織結構由用戶或課程組成。每門課程有一個文件夾,命名為一個整數值。這個整數值即為這門課程的內部數據庫的ID。
Moodle 2.0使用一種全新的組織模式來組織用戶上傳的文件,這是基于哈希算法。
Moodle主要目錄結構
admin:系統管理的代碼
包含控制管理用戶界面的PHP文件。其中包括一個cron.php:作為批處理進程執行系統維護任務,如消息傳遞和過程中備份,同時它也用于處理批量操作
auth:驗證用戶基本模塊及擴展模塊
包含所有Moodle的身份驗證模塊。“auth”目錄里每一個子目錄就是一個身份驗證模塊。這些認證模塊控制創建用戶,用戶配置文件數據,和用戶訪問系統權限。
backup:課程備份代碼
包含課程備份的核心功能:備份,恢復和導入的課程。
blocks:界面板塊基本模塊及擴展模塊
板塊用于顯示信息框,可以在Moodle頁面的右側或左側欄。這是最簡單的可擴展的模塊設計類型。
course:顯示和管理課程的代碼
這是Moodle重要的組成部分,Moodle是圍繞課程組織的。開發人員最有可能修改或增加課程的格式和報告。定制課程格式,可用于改變課程的布局。
enrol:注冊模塊
包含所有的Moodle的注冊模塊。注冊模塊控制課程級角色分配(注冊)的創建和管理。
files:顯示和管理上傳文件的代碼
該文件組件控制文件的上傳,訪問控制,并查看文件。文件管理在Moodle2.0中改寫變化很大。Moodle的2.0將允許外部文件庫中的文件存儲和使用,如:Alfresco, Box.net, and Google Docs等。
filter:過濾器
過濾器系統是關聯從數據庫到頁面創建用戶輸入的內容。過濾器匹配和修改頁面顯示之前。它需要考慮到性能的影響,需要認真制定。
lang:語言模塊
包含核心系統的語言字符串。語言字符串映射也都存儲在Moodle的數據lang文件夾。不同語言的對應文本,每個目錄表示一種語言,并且和具體的模塊對應。
lib:Moodle的核心代碼庫
包含的核心系統庫函數。當我們開發和定制模塊時,我們將使用在此文件夾中定義的類和功能。
mod:Moodle的基本模塊和擴展模塊
包含的活動模塊(activity modules),如assignment, quiz, wiki, forum, and lesson模塊。學習活動是使用Moodle任何課程的核心功能。活動模塊(activity modules)比塊(blocks)創建更具挑戰性和復雜性,因為它們設計到備份,還原,和存儲等級等內容。
my:我的課程
它提供了一個上市的分配給學習者的課程列表,包括即將到來的課程活動的總結。用戶也可以添加和刪除他或她的門戶網站頁面上的塊。“my”提供了一個很好的位置,以最小的核心變化到Moodle顯示自定義信息。例如,我們利用“my”作為一個定制許多項目的面板位置。
theme:站點的主題包,控制站點的樣式
包含了所有的內置的Moodle主題和任何自定義主題。每個主題都有其自己的文件夾。
其它還有:
calendar:維護及顯示日歷的代碼
doc:Moodle的幫助文檔
login:登錄及賬號創建代碼
pix:站點的圖片
user:顯示和管理用戶
onfig.php包含基本的系統設置,一般在第一次安轉時設置
ns tall.php安裝站點
vers ion版本控制
index.php站點首頁
開發概要詳見:http://docs.moodle.org/archive/zh/index.php?title=%E5%BC%80%E5%8F%91:%E6%A6%82%E8%A6%81&variant=zh-cn
總結
以上是生活随笔為你收集整理的moodle php代码解读_Moodle插件moodle 二次开发基础知识一的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vpb在VS2008下的配置编译
- 下一篇: 【个人】近期读书小结+推荐