全网整合营销服务商

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

免费咨询热线: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 框架路由原理与路由访问实例分析  # 的是  # 有个  # 第一个  # 第二个  # 不带  # 放在  # 大家都  # 有很多  # 说了  # 不多  # 有一定  # 分别为  # 种方法  # 这篇文章  # 谢谢大家  # 再到  # 此种  # 中找  # 自动加载  # 有疑问 


相关文章: css网站制作参考文献有哪些,易聊怎么注册?  如何制作算命网站,怎么注册算命网站?  深圳 网站制作,深圳招聘网站哪个比较好一点啊?  上海网站制作开发公司,上海买房比较好的网站有哪些?  网站企业制作流程,用什么语言做企业网站比较好?  网站专业制作公司,网站编辑是做什么的?好做吗?工作前景如何?  智能起名网站制作软件有哪些,制作logo的软件?  建站之星安装后如何配置SEO及设计样式?  如何选择适合PHP云建站的开源框架?  相亲简历制作网站推荐大全,新相亲大会主持人小萍萍资料?  无锡营销型网站制作公司,无锡网选车牌流程?  C#如何在一个XML文件中查找并替换文本内容  免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?  简单实现Android文件上传  开封网站制作公司,网络用语开封是什么意思?  实惠建站价格推荐:2025年高性价比自助建站套餐解析  新网站制作渠道有哪些,跪求一个无线渠道比较强的小说网站,我要发表小说?  北京制作网站的公司,北京铁路集团官方网站?  北京制作网站的公司排名,北京三快科技有限公司是做什么?北京三快科技?  建站之星会员如何解锁更多建站功能?  如何在Golang中实现微服务服务拆分_Golang微服务拆分与接口管理方法  建站主机如何选?高性价比方案全解析  电商网站制作公司有哪些,1688网是什么意思?  如何在七牛云存储上搭建网站并设置自定义域名?  如何挑选最适合建站的高性能VPS主机?  如何用wdcp快速搭建高效网站?  如何在景安云服务器上绑定域名并配置虚拟主机?  实现虚拟支付需哪些建站技术支撑?  定制建站价位费用解析与套餐推荐全攻略  北京网站制作公司哪家好一点,北京租房网站有哪些?  如何在云服务器上快速搭建个人网站?  Python如何创建带属性的XML节点  如何在橙子建站中快速调整背景颜色?  如何通过万网虚拟主机快速搭建网站?  国美网站制作流程,国美电器蒸汽鍋怎么用官方网站?  建站主机服务器选购指南:轻量应用与VPS配置解析  c# Task.ConfigureAwait(true) 在什么场景下是必须的  武汉网站如何制作,黄黄高铁武穴北站途经哪些村庄?  如何在Golang中引入测试模块_Golang测试包导入与使用实践  南京做网站制作公司,南京哈发网络有限公司,公司怎么样,做网页美工DIV+CSS待遇怎么样?  建站之星云端配置指南:模板选择与SEO优化一键生成  c++23 std::expected怎么用 c++优雅处理函数错误返回【详解】  济南网站建设制作公司,室内设计网站一般都有哪些功能?  微网站制作教程,我微信里的网站怎么才能复制到浏览器里?  赚钱网站制作软件,建一个网站怎样才能赚钱?是如何盈利的?  攀枝花网站建设,攀枝花营业执照网上怎么年审?  建站主机选哪种环境更利于SEO优化?  济南企业网站制作公司,济南社保单位网上缴费步骤?  制作宣传网站的软件,小红书可以宣传网站吗?  自助网站制作软件,个人如何自助建网站? 

您的项目需求

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