全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Laravel中获取路由参数Route Parameters的五种方法示例

前言

大家都知道Laravel 获取路由参数的方式有很多,并且有个小坑,现汇总如下,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。

假设我们设置了一个路由参数:

/**
* 定义路由参数名称分别为: param1,param2
*/
Route::get('/{param1}/{param2}', 'TestController@index');

现在我们访问 http://test.dev/1/2

在 TestController 中:

/**
* 路由参数获取方法
*
* @param Illuminate\Http\Request $request 依赖注入 Request 实例,放在参数中什么位置都可以自动加载
* @param mixed $arg2 要获取的路由参数
* @param mixed $arg1 要获取的路由参数
*/

public function index(Request $request, $arg2, $arg1)
{

 /**
 * 方法一:按照 URL 中路由参数先后顺序来获取
 * 注意:此种方式有个小坑,获取的值只与顺序有关,与名称无关
 */
 echo $arg2; //结果为 1 ,因为 $arg2 在第一位,获取的是第一个路由参数 param1 的值
 echo $arg1; //结果为 2 ,因为 $arg1 在第二位,获取的是第二个路由参数 param2 的值

 /**
 * 方法二:按照路由参数名称来获取
 * 注意:此处名称是 Route 中定义的参数名,非上面方法中的参数名 
 */
 $request->route('param1');  //结果为 1 ,获取的是第一个路由参数
 $request->route('param2');  //结果为 2 ,获取的是第二个路由参数

 /**
 * 方法三:使用 request() 辅助函数来获取,效果同方法二
 */
 request()->route('param1');  //结果为 1 ,如果不带路由参数名则返回当前的Route对象
 request()->route('param2');  //结果为 2 ,如果不带路由参数名则返回当前的Route对象

 /**
 * 方法四:使用 Route Facade
 */
 \Route::input('param1');  //结果为 1 ,该方法必须带路由参数名
 \Route::input('param2');  //结果为 2 ,该方法必须带路由参数名

 /**
 * 方法五:使用 Illuminate\Http\Request 实例动态属性
 */
 $request->param1; //结果为 1 ,Laravel 5.4+ 可用
 $request->param2; //结果为 2 ,Laravel 5.4+ 可用
  
 // 或者
 request()->param1; //结果为 1 ,Laravel 5.4+ 可用
 request()->param2; //结果为 2 ,Laravel 5.4+ 可用
  
 //或者
 request('param1'); //结果为 1 ,Laravel 5.4+ 可用
 request('param2'); //结果为 2 ,Laravel 5.4+ 可用
  
 /**
 * 注意:Laravel 在处理动态属性的优先级是,先从请求的数据(POST/GET)中查找,没有的话再到路由参数中找。
 * 例如:URL : http://test.dev/1/2?param1=a&param2=b
 * $request->param1; request()->param1; request('param1'); //结果为 a
 * $request->param2; request()->param2; request('param2'); //结果为 b
 */
}

以上就是 Laravel 获取路由参数的 5 种方法。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对的支持。


# laravel  # route  # 参数  # url  # Laravel框架路由配置总结、设置技巧大全  # 跟我学Laravel之路由  # ThinkPHP、Zend Framework2、Yaf、Laravel框架路由大比拼  # Laravel最佳分割路由文件(routes.php)的方式  # 修改Laravel5.3中的路由文件与路径  # laravel中命名路由的使用方法  # Laravel 5框架学习之路由、控制器和视图简介  # Laravel中重写资源路由自定义URL的实现方法  # Laravel 之url参数  # 获取路由参数的例子  # Laravel路由研究之domain解决多域名问题的方法示例  # Laravel框架路由和控制器的绑定操作方法  # Laravel 框架路由原理与路由访问实例分析  # 的是  # 有个  # 第一个  # 第二个  # 不带  # 放在  # 大家都  # 有很多  # 说了  # 不多  # 有一定  # 分别为  # 种方法  # 这篇文章  # 谢谢大家  # 再到  # 此种  # 中找  # 自动加载  # 有疑问 


相关文章: 网站制作壁纸教程视频,电脑壁纸网站?  定制建站如何定义?其核心优势是什么?  外汇网站制作流程,如何在工商银行网站上做外汇买卖?  北京营销型网站制作公司,可以用python做一个营销推广网站吗?  电商网站制作价格怎么算,网上拍卖流程以及规则?  免费视频制作网站,更新又快又好的免费电影网站?  微信推文制作网站有哪些,怎么做微信推文,急?  网站微信制作软件,如何制作微信链接?  如何配置支付宝与微信支付功能?  高端网站建设与定制开发一站式解决方案 中企动力  香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化  网站制作的方法有哪些,如何将自己制作的网站发布到网上?  网站制作中优化长尾关键字挖掘的技巧,建一个视频网站需要多少钱?  表情包在线制作网站免费,表情包怎么弄?  建站主机选购指南:核心配置优化与品牌推荐方案  Swift中switch语句区间和元组模式匹配  如何在阿里云虚拟主机上快速搭建个人网站?  c++23 std::expected怎么用 c++优雅处理函数错误返回【详解】  小型网站建站如何选择虚拟主机?  如何在Tomcat中配置并部署网站项目?  高性价比服务器租赁——企业级配置与24小时运维服务  如何基于云服务器快速搭建个人网站?  网站制作多少钱一个,建一个论坛网站大约需要多少钱?  如何在Golang中处理模块冲突_解决依赖版本不兼容问题  香港服务器WordPress建站指南:SEO优化与高效部署策略  如何快速生成ASP一键建站模板并优化安全性?  如何选择网络建站服务器?高效建站必看指南  儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?  如何在Golang中实现微服务服务拆分_Golang微服务拆分与接口管理方法  如何选择长沙网站建站模板?H5响应式与品牌定制哪个更优?  实惠建站价格推荐:2025年高性价比自助建站套餐解析  青岛网站建设如何选择本地服务器?  如何挑选优质建站一级代理提升网站排名?  定制建站流程步骤详解:一站式方案设计与开发指南  如何在橙子建站上传落地页?操作指南详解  内部网站制作流程,如何建立公司内部网站?  电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?  哈尔滨网站建设策划,哈尔滨电工证查询网站?  如何通过网站建站时间优化SEO与用户体验?  C++中引用和指针有什么区别?(代码说明)  专业网站制作企业网站,如何制作一个企业网站,建设网站的基本步骤有哪些?  如何快速搭建虚拟主机网站?新手必看指南  如何用PHP快速搭建高效网站?分步指南  如何制作网站标识牌,动态网站如何制作(教程)?  如何在云虚拟主机上快速搭建个人网站?  定制建站流程解析:需求评估与SEO优化功能开发指南  网站设计制作企业有哪些,抖音官网主页怎么设置?  建站主机选虚拟主机还是云服务器更好?  网站好制作吗知乎,网站开发好学吗?有什么技巧?  公众号网站制作网页,微信公众号怎么制作? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。