首頁  >  文章  >  php框架  >  yii2路由怎麼實現的

yii2路由怎麼實現的

(*-*)浩
(*-*)浩原創
2019-11-05 14:00:272682瀏覽

路由(Route)

Web開發中不可避免的要使用到URL。用得最多的,就是產生一個指向應用程式中其他某個頁面的URL了。開發者需要一個簡潔的、集中的、統一的方法來完成這個過程。

yii2路由怎麼實現的

否則的話,在程式碼中寫入大量的諸如http://www.digpage.com/post/view/100 的程式碼,一是過於冗長,二是易出錯且難排查, 三是日後修改起來容易有遺漏。          (建議學習:yii教學

因此,從開發角度來講,需要更簡潔、能統一管理又能排查錯誤的解決方案。

同時,我們在 :ref:install 部分講解如何為Yii配置Web伺服器,從中可以發現, 所有的使用者請求都是發送給入口腳本 index.php 來處理的。

那麼,開發者需要一種高效的判斷請求應採用哪個 controller 哪個 action 進行處理的方法。

結合以上2點需求,Yii提供了路由和URL管理元件。

所謂路由是指URL中用來標識用於處理使用者請求的module, controller, action的部分,一般情況下由 r 查詢參數來指定。  

如 http://www.digpage.com/index.php?r=post/view&id=100 ,表示這個要求將由PostController 的 actionView來處理。

同時,Yii也提供了一種美化URL的功能,讓上面的URL可以用一個比較整潔、美觀的形式表現出來, 如http://www.digpage.com/post/view/ 100 。這個功能的實作是依賴一個稱為 urlManager 的應用元件。

使用 urlManager 開發者可以解析使用者的請求,並指派對應的module, controller和action來進行處理, 也可以根據預義的路由規則,產生需要的URL回傳給使用者使用。

 簡而言之,urlManger具有解析請求以便確定指派誰來處理請求和根據路由規則產生URL 2個功能。

以上是yii2路由怎麼實現的的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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