建立 URL
Helper yii \ helpers \ Url 提供了一組用於管理 URL 的靜態方法。此幫助程式可用於檢視/控制器程式碼中。
路由的 URL:
echo Url::to(['post/index']);
帶引數的路由的 URL:
echo Url::to(['post/view', 'id' => 100]);
錨定網址:
echo Url::to(['post/view', 'id' => 100, '#' => 'content']);
絕對網址:
echo Url::to(['post/index'], true);
使用 https 方案的絕對 URL:
echo Url::to(['post/index'], 'https');
注意: 傳遞給 Url::to()
方法的路由是上下文敏感的。它可以使用當前模組和電流控制器。例如,假設當前模組是 admin
,當前控制器是 post
:
僅具有操作 ID 的相對路徑(根本不包含斜槓):
echo Url::to(['index']); // -->> '/index.php?r=admin%2Fpost%2Findex'
相對路線(沒有前導斜線):
echo Url::to(['post/index']); // -->> '/index.php?r=admin%2Fpost%2Findex'
絕對路線(以斜線開頭):
echo Url::to(['/post/index']); // -->> '/index.php?r=post%2Findex'
當前請求的 URL:
echo Url::to();
echo Url::to(['']);
要根據當前路由和 GET 引數建立 URL,請使用 Url :: current()
。
假設 $_GET = ['id' => 10, 'page' => 7]
,當前路線是 post/view
。
當前網址:
echo Url::current(); // -->> '/index.php?r=post%2Fview&id=10&page=7'
沒有 page
引數的當前 URL:
echo Url::current(['page' => null]); // -->> '/index.php?r=post%2Fview&id=10'
當前網址已更改 page
引數:
echo Url::current(['page' => 12]); // -->> '/index.php?r=post%2Fview&id=10&page=12'