## 模塊modules
模塊開發是工程化開發的一個概念,指的是通過多個現成或半成品的代碼模塊,組成較大規模的系統。模塊開發模式從Ruby On Rails開始流行,并且相當部分PHP框架都支持。
新版SP框架,從底層支持模塊開發,以方便開發者使用。
> 3.1版SP框架可以通過多入口的方式,簡單達到模塊開發的效果。
**注意**
模塊開發最早是為了多個應用共享服務器而出現的(ROR),但PHP系統從執行方式和應用場景來說,更適合單應用的開發。所以比較理想的方式是通過多個單引用+域名的方式來代替模塊開發,會有更高的開發效率。
**模塊目錄**
模塊目錄放置在protected/controller下面,該目錄下每個子目錄都是一個模塊,模塊名稱為目錄名稱。

上圖中的admin目錄即是一個模塊。
**模塊文件**
模塊目錄內,是一套單獨的控制器,模塊包含自身獨有的BaseController,該模塊BaseController可以:
1. 模塊獨有的權限認證、
2. 模塊范圍內改變layout布局、
3. 獨立的彈窗提示和404頁面、
4. 其他BaseController可以覆蓋的點...
模塊內其他的控制器文件和普通的控制器文件沒區別。
**訪問**
訪問模塊內的控制器,需要在url()函數上加入**m參數**,如:
http://localhost/index.php?m=admin&c=main&a=index
那么就是進入admin目錄的MainController的actionIndex()方法。
當使用了偽靜態,在路由規則上就是<m>來指代控制器名稱。
具體模塊的偽靜態規則,請參考《[偽靜態及URL跳轉](訪問交互-偽靜態及URL跳轉.md)》一章。
- 自述
- 一、入門教程
- 1. 開始使用SpeedPHP
- 2. Hello World
- 3. 理解MVC
- 4. 制作留言本
- 5. 數據操作及Ajax
- 二、框架概述
- 1. 特色
- 2. 版權及開源協議
- 3. 開發環境
- 4. 編碼版本
- 5. SAE平臺使用
- 三、開發指南
- 1. 開發流程
- 2. 架構及擴展
- 3. 程序目錄結構
- 4. 命名建議
- 5. 安全建議
- 6. 用戶自定義
- 7. 模塊modules
- 四、訪問交互
- 1. 表單提交及數據獲取
- 2. session/cookie的使用
- 3. 偽靜態及URL跳轉
- 4. 使用frameset
- 5. 模板引擎特性和使用方法
- 五、數據操作
- 1. 建立數據模型類
- 2. 數據操作教程
- 3. 分頁
- 4. SQL支持及關聯實現
- 5. 多數據庫、主從庫配置