Yii2 获取URL的一些方法
1. 获取url中的host信息:
例如:http://www.nongxiange.com/product/2.html
Yii::$app->request->getHostInfo();
结果:http://www.nongxiange.com
2. 获取url中的路径信息(不包含host和参数):
例如:http://www.nongxiange.com/product/2.html?isnew=1
Yii::$app->request->getPathInfo()
结果:product/2.html
3. 获取不包含host信息的url(含参数):
例如:http://www.nongxiange.com/product/2.html?isnew=1
Yii::$app->request->url
结果:product/2.html?isnew=1
4. 获取完整url(含host以及参数):
例如:http://www.nongxiange.com/product/2.html?isnew=1
Yii::$app->request->getHostInfo().Yii::$app->request->url;
结果:http://www.nongxiange.com/product/2.html?isnew=1
5.只想获取url中的参数部分:
例如:http://www.nongxiange.com/product/2.html?isnew=1
Yii::$app->request->queryString
结果:isnew=1
6.获取某个参数的值,比如id
例如:http://www.nongxiange.com/user?id=12345
Yii::$app->request->getQueryParam('id')
结果:12345
Yii2 获取模块名、控制器名、方法名 在视图中:
模块名 $this->context->module->id
控制器名 $this->context->id
方法名 $this->context->action->id
在控制器中
模块名 Yii::$app->controller->module->id;
控制器名 Yii::$app->controller->id
方法名 Yii::$app->controller->action->id;
或
模块名 $this->module->id;
控制器名 $this->id;
方法名 $this->action->id;
在控制器的 beforeAction 方法中(方法接收$action参数)
模块名 $action->controller->module->id;
控制器名 $action->controller->id;
方法名 $action->id;