首頁 >php框架 >ThinkPHP >thinkphp框架路由的定義與使用

thinkphp框架路由的定義與使用

藏色散人
藏色散人原創
2019-07-06 14:28:256881瀏覽

thinkphp框架路由的定義與使用

thinkphp框架路由的定義與使用

ThinkPHP框架具體強大的路由定義功能,基本上可以滿足網站路由的所有要求,包括規則路由、正規路由、靜態路由,也對路由的閉包支援。

以下介紹ThinkPHP框架路由的定義與使用。

路由的定義

啟用路由。 ThinkPHP路由設定生效需要滿足三個條件:

(1)在設定檔中開啟路由功能,如下圖1;

(2)URL支援PATH_INFO模式或相容URL模式;

(3)設定檔中使用URL_ROUTE_RULES參數進行配置,如下圖2。

thinkphp框架路由的定義與使用

路由定義格式。定義的格式有兩種:

(1) '路由表達式'=>'路由位址與傳入參數;

(2)array('路由表達式','路由位址','傳入參數')。

thinkphp框架路由的定義與使用

路由參數設定。這些參數的作用是限制定義的路由規則的生效條件,主要有三種作用,分別是限制URL後綴、限制請求類型、自訂檢測。

thinkphp框架路由的定義與使用

路由的使用

規則路由。規則路由表達式包含靜態位址和動態位址,或兩種位址的結合,如下圖。

註解:每個參數中以「:」開頭的參數都表示動態參數。例如:id表示該處符合的參數可以使用$_GET['id']方式取得,:year、 :month 、:day 則分別對應$_GET['year']、 $_GET['month'] 和$ _GET['day']。

thinkphp框架路由的定義與使用

正規路由,必須以「/」開頭,表達式不但支援正規的定義,而且還支援函數過濾處理。

thinkphp框架路由的定義與使用

靜態路由,表達式中路由的定義不包含動態參數,執行效率高,但作用有限。靜態路由的格式為:[控制器/操作?]參數1=值1&參數2=值2。

注意:為了不影響動態路由的遍歷效率,靜態路由採用URL_MAP_RULES定義和動態路由區分開來。

thinkphp框架路由的定義與使用

使用閉包的方式定義路由。這種方式不需要執行控制器的操作方法,如下圖。

thinkphp框架路由的定義與使用

本文來自ThinkPHP框架技術文章欄位:http://www.php.cn/phpkj/thinkphp/

以上是thinkphp框架路由的定義與使用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn