Laravel框架使用技巧之使用url()全局函数返回前一个页面的地址方法详解


Posted in PHP onApril 06, 2020

注意:文章标题中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

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

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

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

//返回当前页面的地址(不包含参数)
url()->current(); 

//返回当前页面的完整地址(包含参数)
url()->full();  

//返回前一个页面的地址(包含参数)
url()->previous();

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

//3water.com/articles/6?author=eagle

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

echo url()->previous();

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

//3water.com/articles/6?author=eagle

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

<a href="{{ url()->previous() }}" rel="external nofollow" >返回</a>

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

<a href="{{ route('articles.index') }}" rel="external nofollow" >返回文章管理</a>

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

对于route函数更多的使用实例,会在另一篇文章中进行详述。

本文主要讲解了Laravel框架使用url()全局函数返回前一个页面的地址的方法,更多关于Laravel框架的使用技巧请查看下面的相关链接

PHP 相关文章推荐
session 的生命周期是多长
Oct 09 PHP
PHP在引号前面添加反斜杠(PHP去除反斜杠)
Sep 28 PHP
thinkphp实现数组分页示例
Apr 13 PHP
php计算数组相同值出现次数的代码(array_count_values)
Jan 20 PHP
使用PHP uniqid函数生成唯一ID
Nov 18 PHP
使用php+swoole对client数据实时更新(一)
Jan 07 PHP
PHP常用字符串操作函数实例总结(trim、nl2br、addcslashes、uudecode、md5等)
Jan 09 PHP
thinkPHP多域名情况下使用memcache方式共享session数据的实现方法
Jul 21 PHP
Yii输入正确验证码却验证失败的解决方法
Jun 06 PHP
ThinkPHP5.1表单令牌Token失效问题的解决
Mar 22 PHP
php和C#的yield迭代器实现方法对比分析
Jul 17 PHP
laravel框架中视图的基本使用方法分析
Nov 23 PHP
使用git迁移Laravel项目至新开发环境的步骤详解
Apr 06 #PHP
Laravel框架数据库迁移操作实例详解
Apr 06 #PHP
Laravel框架中队列和工作(Queues、Jobs)操作实例详解
Apr 06 #PHP
Laravel实现批量更新多条数据
Apr 06 #PHP
PHP正则之正向预查与反向预查讲解与实例
Apr 06 #PHP
TP5框架安全机制实例分析
Apr 05 #PHP
TP5框架实现自定义分页样式的方法示例
Apr 05 #PHP
You might like
Windows Apache2.2.11及Php5.2.9-1的安装与配置方法
2009/06/08 PHP
php长字符串定义方法
2012/07/12 PHP
Zend Framework入门知识点小结
2016/03/19 PHP
thinkPHP显示不出验证码的原因与解决方法分析
2017/05/20 PHP
教你如何解密js/vbs/vbscript加密的编码异处理小结
2008/06/25 Javascript
模仿JQuery.extend函数扩展自己对象的js代码
2009/12/09 Javascript
Javascript调用C#代码
2011/01/17 Javascript
iframe实用操作锦集
2014/04/22 Javascript
javascript定义变量时有var和没有var的区别探讨
2014/07/21 Javascript
jQuery中prevUntil()方法用法实例
2015/01/08 Javascript
深入浅析JavaScript面向对象和原型函数
2016/02/06 Javascript
JavaScript重载函数实例剖析
2016/05/13 Javascript
Node.js的特点详解
2017/02/03 Javascript
ionic2 tabs 图标自定义实例
2017/03/08 Javascript
jQuery使用正则验证15/18身份证的方法示例
2017/04/27 jQuery
jQuery遮罩层实例讲解
2017/05/11 jQuery
关于vue-router的beforeEach无限循环的问题解决
2017/09/09 Javascript
微信小程序自定义音乐进度条的实例代码
2018/08/28 Javascript
微信小程序wx:for循环的实例详解
2018/10/07 Javascript
vue微信分享的实现(在当前页面分享其他页面)
2019/04/16 Javascript
实例详解vue中的$root和$parent
2019/04/29 Javascript
在Apache服务器上同时运行多个Django程序的方法
2015/07/22 Python
Python基于列表list实现的CRUD操作功能示例
2018/01/05 Python
python实现冒泡排序算法的两种方法
2018/03/10 Python
Windows系统Python直接调用C++ DLL的方法
2019/08/01 Python
Python如何实现在字符串里嵌入双引号或者单引号
2020/03/02 Python
what is the difference between ext2 and ext3
2013/11/03 面试题
解释i节点在文件系统中的作用
2013/11/26 面试题
函授毕业个人自我评价
2014/02/20 职场文书
教师暑期培训感言
2014/08/15 职场文书
中学生关于梦想的演讲稿
2014/08/22 职场文书
农业生产宣传标语
2014/10/08 职场文书
2016年会领导致辞稿
2015/07/29 职场文书
教导处教学工作总结
2015/08/12 职场文书
SQL Server2019数据库备份与还原脚本,数据库可批量备份
2021/11/20 SQL Server
Django框架中模型的用法
2022/06/10 Python