Yii2.0 to(), toRoute(), current()区别用法 [ 2.0 版本 ]
[Url::current] - 现在测试本地路径(http://daxia.dc.weixin.com/mobile/hmConnections/user/verify-user
)
a: //获取当前路径 - 相对路径
$url = Url::current();
举例:/mobile/hmConnections/user/verify-user
b: //获取当前路径 - 相对路径
$url = Url::current(['id' => 1], false);
例如: /mobile/hmConnections/user/verify-user?id=1
c: //获取当前路径 - 绝对路径
$url = Url::current(['id' => 1], true);
例如: http://daxia.dc.weixin.com/mobile/hmConnections/user/verify-user?id=1
d: //获取当前路径 - 绝对路径 传输协议-http
$url = Url::current(['id' => 1], 'http');
例如: http://daxia.dc.weixin.com/mobile/hmConnections/user/verify-user?id=1
e: //获取当前路径 - 绝对路径 传输协议-https
$url = Url::current(['id' => 1], 'https');
例如: https://daxia.dc.weixin.com/mobile/hmConnections/user/verify-user?id=1
[Url::toRoute] - 获取某一地址 => 现在测试本地路径(http://daxia.dc.weixin.com/mobile/hmConnections/user/verify-user
)
1://获取某地址 - 相对路径
$url = Url::toRoute('site/index');
例如: /mobile/hmConnections/site/index
2://获取某地址 - 相对路径
$url = Url::toRoute('site/index', false);
例如: /mobile/hmConnections/site/index
说明: 等价于1 因为默认是false
3://获取某地址 - 相对路径
$url = Url::toRoute(['site/index', 'id' => 1]);
例如: /mobile/hmConnections/site/index?id=1
4://获取某地址的 - 绝对路径
$url = Url::toRoute('site/index', true);
例如: http://daxia.dc.weixin.com/mobile/hmConnections/site/index
5://获取某地址的 - 绝对路径
$url = Url::toRoute('site/index', ['id' => 1]);
例如: http://daxia.dc.weixin.com/mobile/hmConnections/site/index
说明: 参数没有输出,说明,这种写法['id' => 1], 他当成了true,所以等价于4
6://获取某地址的 - 绝对路径 (传输协议-http)
$url = Url::toRoute('site/index', 'http');
例如: https://daxia.dc.weixin.com/mobile/hmConnections/site/index
说明: 等价于4
7://获取某地址的 - 绝对路径 (传输协议-https)
$url = Url::toRoute('site/index', 'https');
例如: https://daxia.dc.weixin.com/mobile/hmConnections/site/index
[Url::to] - 创建一个基于给定参数的网址 => 现在测试本地路径(http://daxia.dc.weixin.com/mobile/hmConnections/user/verify-user
)
1): //获某网址 - 相对路径
$url = Url::to(['site/index']);
举例:/mobile/hmConnections/site/index
说明:等价于2
2): //获取网址(带参数) - 相对路径
$url = Url::to(['site/index', 'id' => 1]);
举例:/mobile/hmConnections/site/index?id=1
说明:等价于3
3): 获取当前路径 - 相对路径
$url = Url::to();
举例:/mobile/hmConnections/user/verify-user
等价于a
4): 获取url - 相对路径
$url = Url::to('@web/image/1.jpg');
举例: /image/a.jpg
说明:它将指定到你的某一个别名目录下@web
5): 获取url - 相对路径
$url = Url::to('image/1.jpg');
举例:image/a.jpg
6): 获取url - 绝对路径(@mobileUrl 自己配置好的)
$url = Url::to('@mobileUrl/image/1.jpg', true);
举例:http://daxia.dc.weixin.com/static/mobile/image/1.jpg
7): //获取url - 绝对路径 (传输协议-https)
$url = Url::to('@mobileUrl/image/1.jpg', 'https');
举例:https://daxia.dc.weixin.com/static/mobile/image/1.jpg
8): //获取url - 绝对路径 (传输协议-http)
$url = Url::to('@mobileUrl/image/1.jpg', 'http');
举例:http://daxia.dc.weixin.com/static/mobile/image/1.jpg
说明:等价于 6)
特别说明下:@mobileUrl
$url = Url::to('@mobileUrl/city-partner/city-partner/images/1.png');
- @mobileUrl,配置如下:
Yii::setAlias('@mobileUrl', Yii::getAlias('@web/static/mobile/'));
- 给
Yii::getAlias('@web/static/mobile/')
定义一个别名@mobileUrl
(也就是,下次我们直接用@mobileUrl
来表示Yii::getAlias('@web/static/mobile/')
的意思) @web
指的是当前项目目录下的web下, 这是框架默认的- 而当前目录也需要配置,一般是在
common/config/bootstrap.php
进行配置
配置如下:Yii::setAlias('service', dirname(dirname(__DIR__)) . '/platform_service');
说明: 因为自己用的时候,总是用,老是忘,并且也发现中间有相似的地方,所以在这里进行全部的整理
大霞daxia 北京
最后登录:2019-07-23
在线时长:13小时34分
- 粉丝33
- 金钱925
- 威望80
- 积分1855
共 1 条评论
这些$_SERVER里都有吧
我们项目中还是用的这种方式比较多,你说的那个,几乎很少用的!