在實際項目中,我們推薦使用 yii2 內置的 url 工具類生成鏈接,因為這樣我們可以非常便捷的管理整站的 url 行為:比如通過修改配置改變整站的url格式等。
Yii2 內置的 URL 生成工具
URL 管理器:urlManager
URL 助手類:yiihelpersUrl
使用內置的 URL 生成工具,以后可以在不改變源碼的情況通過配置即可美化整站的 URL。
(推薦教程:yii框架)
URL 管理器
URL 管理器是一個名叫 urlManager 的內置應用組件。在 WEB 應用和控制臺應用中以通過以下兩種方式創建 URL:
Yii::$app->urlManager->createUrl($params) Yii::$app->urlManager->createAbsoluteUrl($params,?$schema?=?null)
createUrl 方法生成根目錄的相對路徑,例如:/index.php?r=article/view
createAbsoluteUrl() 方法生成的是絕對路徑,例如:http://www.example.com/index.php?r=article/view
常見的利用 URL 管理器創建 URL 的例子:
//?URL:/index.php?r=article/view Yii::$app->urlManager->createUrl('article/view'); //?URL:/index.php?r=article/view&id=2 Yii::$app->urlManager->createUrl(['article/view','id'=>2]); //?URL:?http://www.example.com?r=kernel/article/viewecho? Yii::$app->urlManager->createAbsoluteUrl('kernel/article/view');
URL 助手類
相對于 URL管理器,使用 yiihelpersUrl 助手類可大大簡化 URL 的創建。
1、假設當前 URL /index.php?r=kernel/article/view&id=10,以下說明 URL 助手類 Url::to() 是如何工作的(不推薦):
2、假設當前 URL /index.php?r=kernel/article/view&id=10,以下說明 URL 助手類 Url::toRoute() 方法是如何工作的(推薦):
3、假設當前 URL /index.php?r=kernel/article/view&id=10,以下說明 URL 助手類 Url::current() 方法是如何工作的(推薦):
更多編程相關內容學習,請關注php中文網yii框架欄目!