Laravel 5.2+ 使用url()全局函数返回前一个页面的地址

网友投稿 588 2022-05-30

注意:文章标题中5.2+表示该文章内容可向上兼容,适用于Laravel版本5.2及更高(目前最新为5.6),但不可向下兼容,即不适用于5.2版本以下。推荐大家花一点点时间,将自己的Laravel更新至5.6版本。

在后台开发时,我们经常需要获取用户之前操作页面的地址并生成一个返回之前页面的链接。

而Laravel从版本5.2+开始,便提供了一系列全局帮助函数(Helper Functions)来简化我们的工作:

https://laravel.com/docs/5.2/helpers#method-url

Laravel 5.2+ 使用url()全局函数返回前一个页面的地址

要查看更高版本的相应文档,请将以上链接中的版本号替换为相应版本即可。

帮助函数中有一些很常用到的,比如Paths中的public_path及Storage_path,Miscellaneous中的dd、view、Session等。

而今天我们要用到的是URLs中的函数:

//返回当前页面的地址(不包含参数)

url()->current();

//返回当前页面的完整地址(包含参数)

url()->full();

//返回前一个页面的地址(包含参数)

url()->previous();

例如,我们当前位置处于以下页面:

http://blog.sbot.io/articles/6?author=eagle

如果我们在该页面点击了某个操作,那么在我们的控制器中,我们输出

echo url()->previous();

会发现输出的结果与我们之前操作的页面的url一致:

http://blog.sbot.io/articles/6?author=eagle

全局函数可以在blade模板中直接使用,所以如果我们要创建一个返回按钮,我们可以在view中使用以下代码:

返回

当然,很多情况下我们也可以直接返回至指定的路径名:

返回文章管理

这里我们使用了极为常用的route函数,articles.index是articles这个资源(resource)的管理路径名称。

Laravel

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:什么是RESTful API
下一篇:在 Heroku 上托管 Django 项目
相关文章