[TOC=1,4]
####URL路由
入口腳本程序獲取到到URL中相關的GET參數,解析后進行權限判斷,然后調用相應的控制器處理這個請求。該過程就被稱為URL路由(routing)。
####解析路由
#####地址URL地址路由
當傳入的URL請求中包含一個名為 **c**、**a**、**do**(可選) 的 GET 參數,它即被視為一個路由,例如:
```
http://we7.cc/web/index.php?c=platform&a=menu&
```
則會路由至 **/web/source/platform/menu.ctrl.php** 文件中
```
http://we7.cc/app/index.php?c=mc&a=home&
```
則會路由至 **/app/source/mc/home.ctrl.php** 文件中
#####模塊URL地址路由
當傳入的 **c** 值為 “site”, **a** 值為 “entry”時則是一個模塊路由,例如:
```
http://we7.cc/web/index.php?c=site&a=entry&do=themeset&m=we7_demo
```
則會路由至 **/addons/we7_demo/site.php** 文件中的 **doWebThemeset()** 方法。
```
http://we7.cc/app/index.php?i=1&j=2&c=entry&do=list&m=we7_demo
```
則會路由至 **/addons/we7_demo/site.php** 文件中的 **doMobileList()** 方法。
####約定及使用
GET 參數中的 **c**、**a**、**do**為微擎系統的路由參數,應當避免與系統參數沖突,在程序中可以使用 **$controller**、**$action**、**$do**來獲取對應的路由三個參數
####創建一個URL
微擎提供一個創建URL的函數 **url($segment, $params = array(), $noredirect = false)** , 路由的表達式以斜杠“/”的方式組織,每個以斜杠分隔的片段都是指向某一控制器(controller)、操作(action)或是行為(do)。
第二個參數則是以數組的形式表示URL中的QueryString。例如:
```
//生成此地址
//http://we7.cc/web/index.php?c=site&a=entry&do=themeset&m=we7_demo
echo url('site/entry/themeset', array('m' => 'we7_demo'));
//http://we7.cc/app/index.php?c=mc&a=home&
echo url('mc/home');
```
模塊中二次封裝了系統的 **url()** 函數,使用時變的更加簡單,例如:
```
class We7_demoModuleSite extends WeModuleSite {
public function doMobileIndex() {
echo $this->createMobileUrl('home');
}
public function doMobileHome() {
//上面doMobileIndex()生成的鏈接會進入到這里
}
publci function doWebIndex() {
echo $this->createWebUrl('home');
}
public function doWebHome() {
//上面doWebIndex()生成的鏈接會進入到這里
}
}
```
- 入門
- 系統安裝
- 接入公眾平臺
- 關鍵字回復
- 更上一層樓
- 編碼規范
- php編碼規范
- html&css編碼規范
- JavaScript編碼規范
- 系統概述
- 結構概述
- 入口腳本
- 微擎MVC
- URL路由&創建
- $_W&全局變量
- 加載器
- 錯誤處理
- 日志記錄
- 模板
- 模板標簽
- 數據調用
- 常用變量
- 手機端組件
- 概述及依賴
- 圖像上傳
- 彈出選項
- 后臺組件
- 概述及依賴
- 后臺文件上傳
- 富文本編輯器
- 系統鏈接選擇器
- 其它常用組件
- 數據庫
- 參數綁定
- 數據操作
- 主從配置
- 連接其它數據庫
- 緩存
- 配置
- 緩存操作
- Http請求
- 概述及依賴
- GET&POST請求
- 發送郵件
- 會員與積分
- 統一用戶中心
- 借用OAuth
- 積分操作
- 資料操作
- 卡券
- 營銷卡券
- 會員卡
- 消息響應
- 消息概述
- 消息響應
- 微信API
- 公眾號AccessToken
- 共享收貨地址(廢棄)
- 共享收貨地址(新)
- 粉絲標簽
- 客服消息
- 模板消息
- 粉絲信息
- 素材
- 群發
- 二維碼
- 在線支付
- 概述及依賴
- 發起支付(PHP)
- 發起支付(JS)
- 驗證支付
- 模塊
- 設計模塊
- 目錄結構
- module.php
- processor.php
- site.php
- receiver.php
- 模塊高級專題
- 自定義分享
- 智能應答
- 微信卡券
- 遠程附件
- 權限控制
- 特殊事件觸發模塊
- 粉絲信息
- 小程序
- 概述
- Uitl類
- 云服務
- 云API
- 系統接口
- 模塊云配置
- 云短信
- 云短信錯誤代碼
- 云短信發送函數
- 批量群發短信
- 應用推廣
- 懸賞文案
- 折扣碼
- 系統消息
- 開發者等級資料認證
- 應用標簽
- 模塊自動檢測訂閱支持
- 小程序
- 開發實例
- 參數設置
- 常見問題