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
1 |
|
结果: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
1 |
|
结果:http://www.nongxiange.com/product/2.html?isnew=1
5.只想获取url中的参数部分:
例如:http://www.nongxiange.com/product/2.html?isnew=1
1 |
|
结果:isnew=1
6.获取某个参数的值,比如id
例如:http://www.nongxiange.com/user?id=12345
1 |
|
结果:12345
假设被请求URL是 http://example.com/admin/index.php/product?id=100
Yii::𝑎𝑝𝑝−>𝑟𝑒𝑞𝑢𝑒𝑠𝑡−>𝑢𝑟𝑙;//返回/𝑎𝑑𝑚𝑖𝑛/𝑖𝑛𝑑𝑒𝑥.𝑝ℎ𝑝/𝑝𝑟𝑜𝑑𝑢𝑐𝑡?𝑖𝑑=100,此𝑈𝑅𝐿不包括ℎ𝑜𝑠𝑡𝑖𝑛𝑓𝑜部分。𝑌𝑖𝑖::app−>request−>url;//返回/admin/index.php/product?id=100,此URL不包括hostinfo部分。Yii::app->request->absoluteUrl;
//返回 http://example.com/admin/index.php/product?id=100, 包含host infode的整个URL。
Yii::𝑎𝑝𝑝−>𝑟𝑒𝑞𝑢𝑒𝑠𝑡−>ℎ𝑜𝑠𝑡𝐼𝑛𝑓𝑜;//返回ℎ𝑡𝑡𝑝://𝑒𝑥𝑎𝑚𝑝𝑙𝑒.𝑐𝑜𝑚,只有ℎ𝑜𝑠𝑡𝑖𝑛𝑓𝑜部分。𝑌𝑖𝑖::app−>request−>hostInfo;//返回http://example.com,只有hostinfo部分。Yii::app->request->pathInfo;
//返回 /product, 这个是入口脚本之后,问号之前(查询字符串)的部分。
Yii::𝑎𝑝𝑝−>𝑟𝑒𝑞𝑢𝑒𝑠𝑡−>𝑞𝑢𝑒𝑟𝑦𝑆𝑡𝑟𝑖𝑛𝑔;//返回𝑖𝑑=100,问号之后的部分。𝑌𝑖𝑖::app−>request−>queryString;//返回id=100,问号之后的部分。Yii::app->request->baseUrl;
//返回 /admin, host info之后, 入口脚本之前的部分。
Yii::𝑎𝑝𝑝−>𝑟𝑒𝑞𝑢𝑒𝑠𝑡−>𝑠𝑐𝑟𝑖𝑝𝑡𝑈𝑟𝑙;//返回/𝑎𝑑𝑚𝑖𝑛/𝑖𝑛𝑑𝑒𝑥.𝑝ℎ𝑝,没有𝑝𝑎𝑡ℎ𝑖𝑛𝑓𝑜和查询字符串部分。𝑌𝑖𝑖::app−>request−>scriptUrl;//返回/admin/index.php,没有pathinfo和查询字符串部分。Yii::app->request->serverName;
//返回 example.com, URL中的host name。
Yii::$app->request->serverPort;
//返回 80, 这是web服务中使用的端口。