laravel基础学习笔记--请求篇
接收请求
要通过依赖注入获取当前HTTP请求实例,应该在控制器上引入
use Illuminate\Http\Request类。传入的请求实例将会由服务容器自动注入:
public function __invoke(Request $request)
{
dd($request);
}
如果想要在定义路由时去传入参数,又要使用依赖注入,在路由传递的参数就要放在依赖注入的后面了
public function __invoke(Request $request,$id)
{
dd($id);
}
获取请求的路径,不是完整的路径
$request->path()
获取请求URL 完整路径
1.不包含查询条件
$request->url()
2.包含查询条件,带的查询条件都会被获取出来
$request->fullUrl()
获取请求类型
$request->method()
判断请求方法
$request->isMethod('get');//不区分大小写,返回布尔值
获取用户输入的数据
- 获取用户输入的所有数据,默认是数据类型
$request->all()
- 获取用户输入的单个数据
$request->input('id')
//还可以在获取的同时,如果没有值,就默认给一个值
$request->input('id','32')
- 判断请求方法类型
$request->isMethod('get')
- 从查询字符串获取输入(query)
$request->query('name')//http://blog.cn/test?name=24这样才可以查询出来,post方式查不出
- 如果query()不带参数,就是获取全部查询条件的关联数组
$request->query('name')
- 通过动态属性获取输入
$request->name//如果表单有name字段,可以使用这种方式来获取数据
- 获取部分输入数据
$request->only(['name','email']//只包含
$request->except(['name']//不包含
判断值是否存在(只要给定了这个参数,不管有没有值都是为true)–has
$request->has('name')
将会在指定的值有一个存在的情况下返回 true(hasAny 方法)
$request->hasAny(['name','age'])
判断值是否存在(在请求中是否存在,并且不为空)–filled
$request->filled('name')
由于 HTML 表单不能够构造 PUT , PATCH 或 DELETE 请求,需要添加隐藏的 _method 域来模拟这些 HTTP 动作。
@method('put')
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析