我想在Yii 2中获取项目的基本URL,但它似乎不起作用.根据您曾经能够做到的这个页面:
Yii::app()->getBaseUrl(true);
Run Code Online (Sandbox Code Playgroud)
在Yii 1中,似乎Yii 2 中的那个方法不再接受参数?
我试过没有真实,例如:
Yii::$app->getBaseUrl();
Run Code Online (Sandbox Code Playgroud)
但它只是空了.
你怎么能在Yii 2中做到这一点?
Die*_*lus 27
我的猜测是你需要查看别名.
使用别名就像:
Yii::getAlias('@web');
Run Code Online (Sandbox Code Playgroud)
您也可以始终依赖以下两种方法之一:
Yii::$app->homeUrl;
Url::base();
Run Code Online (Sandbox Code Playgroud)
rob*_*006 24
要获取应用程序的基本URL,您应该使用yii\helpers\Url::base()方法:
use yii\helpers\Url;
Url::base(); // /myapp
Url::base(true); // http(s)://example.com/myapp - depending on current schema
Url::base('https'); // https://example.com/myapp
Url::base('http'); // http://example.com/myapp
Url::base(''); // //example.com/myapp
Run Code Online (Sandbox Code Playgroud)
Url::home() 不应该在这种情况下使用.Application::$homeUrl默认情况下使用基本URL,但它可以很容易地更改(例如https://example.com/myapp/home),因此您不应该依赖于它将始终返回基本URL的假设.如果有一种特殊的Url::base()方法来获取基本URL,那么使用它.
像这样使用它:
Yii::$app->getUrlManager()->getBaseUrl()
Run Code Online (Sandbox Code Playgroud)
有关基本,规范,主页URL的更多信息:http: //www.yiiframework.com/doc-2.0/yii-helpers-url.html
| 归档时间: |
|
| 查看次数: |
76125 次 |
| 最近记录: |