yii2 Url 帮助类
yii2 2017-05-07 17:34:31

参考资料:

http://www.yiiframework.com/doc-2.0/guide-helper-url.html

 

Class yii\helpers\Url

获得通用 URL
有两种获取通用 URLS 的方法 :当前请求的 home URL 和 base URL 。 为了获取 home URL ,使用如下代码:

PHP Code复制内容到剪贴板
  1. $relativeHomeUrl = Url::home();  
  2. $absoluteHomeUrl = Url::home(true);  
  3. $httpsAbsoluteHomeUrl = Url::home('https');  

 

PHP Code复制内容到剪贴板
  1. // /index.php?r=site%2Findex  
  2. echo Url::to(['site/index']);  
  3.   
  4. // /index.php?r=site%2Findex&src=ref1#name  
  5. echo Url::to(['site/index''src' => 'ref1''#' => 'name']);  
  6.   
  7. // /index.php?r=post%2Findex     assume the alias "@posts" is defined as "/post/index"  
  8. echo Url::to(['@posts']);  
  9.   
  10. // the currently requested URL  
  11. echo Url::to();  
  12.   
  13. // /images/logo.gif  
  14. echo Url::to('@web/images/logo.gif');  
  15.   
  16. // images/logo.gif  
  17. echo Url::to('images/logo.gif');  
  18.   
  19. // http://www.example.com/images/logo.gif  
  20. echo Url::to('@web/images/logo.gif', true);  
  21.   
  22. // https://www.example.com/images/logo.gif  
  23. echo Url::to('@web/images/logo.gif''https');  
  24.   
  25. // //www.example.com/images/logo.gif  
  26. echo Url::to('@web/images/logo.gif''');  

 

 

记住网址

有些情况需要记住URL,然后在处理顺序请求时使用它。可以通过以下方式实现:

PHP Code复制内容到剪贴板
  1. // Remember current URL   
  2. Url::remember();  
  3.   
  4. // Remember URL specified. See Url::to() for argument format.  
  5. Url::remember(['product/view''id' => 42]);  
  6.   
  7. // Remember URL specified with a name given  
  8. Url::remember(['product/view''id' => 42], 'product');  

在下一个请求中,我们可以通过以下方式获取URL:

PHP Code复制内容到剪贴板
  1. $url = Url::previous();  
  2. $productUrl = Url::previous('product');  

  

可以在控制器中的index记住当前链接,含page等参数,在update,add方法中,返回链接,如:

PHP Code复制内容到剪贴板
  1. public function actionIndex(){  
  2.     Url::remember();/* 记住当前链接,add 、update和edit以后返回 */  
  3. }  
  4.   
  5. public function actionUpdate($id){  
  6.     $url = Url::previous();  
  7.     return $this->goBack($url);  
  8. }  

 

 

检查相对URL

要查明URL是否相对,即没有主机信息部分,可以使用以下代码:

PHP Code复制内容到剪贴板
  1. $isRelative = Url::isRelative('test/it');  

 

 

 

 

 

 

 

 

本文来自于:http://www.yiiframework.com/doc-2.0/yii-helpers-url.html

Powered by yoyo苏ICP备15045725号