thinkphp route路由類解析 ——正則路由規則路由

首先得了解tp的正則路由個規則路由

ThinkPHP的路由功能包括:
正則路由
規則路由
靜態路由(URL映射)
閉包支持


路由表達式
路由表達式包括規則路由和正則路由的定義表達式,只能使用字符串。
表達式示例
正則表達式/^blog\/(\d+)$/
規則表達式blog/:id
 所以通過判斷 ‘ /’ 來區分正則路由和規則路由

規則路由:規則路由是一種比較容易理解的路由定義方式,採用ThinkPHP設計的規則表達式來定義。


規則表達式
規則表達式通常包含靜態地址和動態地址,或者兩種地址的結合,例如下面都屬於有效的規則表達式:

'my' => 'Member/myinfo', // 靜態地址路由
2. 'blog/:id' => 'Blog/read', // 靜態地址和動態地址結合
3. 'new/:year/:month/:day'=>'News/read', // 靜態地址和動態地址結合
4. ':user/:blog_id' =>'Blog/read',// 全動態地址

每個參數中以“:”開頭的參數都表示動態參數,並且會自動對應一個GET參數,例如:id 表示該處匹配
到的參數可以使用$_GET['id'] 方式獲取, :year 、 :month 、:day 則分別對
應$_GET['year'] 、 $_GET['month'] 和 $_GET['day'] 。


正則匹配:

正則路由也就是採用正則表達式定義路由的一種方式,依靠強大的正則表達式,能夠定義更靈活的路由規
則。
路由表達式支持的正則定義必須以“/”開頭,否則就視爲規則表達式


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章