首页 >  编程教程 >  laravel教程 >  正文

laravel Request的所有方法详解

 作者:潘某人SEO
1431

Request 对象访问任何基于 HTTP 请求传递的所有信息,包括从 HTML 表格用 POST 方法或 GET 方法传递的参数、cookie 和用户认证。Request 对象使您能够访问客户端发送给服务器的二进制数据。

laravel Request实例子

如果你在一个命名空间里,你需要在类文件的顶部使用 use Request; 这条声明来导入 Request 这个 facade 。

<?php
namespace App\Http\Controllers\Seodd;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
class DemoController extends Controller
{
    //获取所有请求参数
    public function panmouren(Request $request){
        $row = Request::all();
        $row = $request->all();
        dd($row);
    }
}
1
2
3
4
5
6
7
8
9
10
11
12
13

注意:可以这么理解大多数情况下,使用的时候‘Request::’等价于‘$request->’。

检索输入

使用几个简单的方法,你可以得到在 Illuminate\Http\Request 实例上的用户的所有的输入。你不用管请求使用的 HTTP 动作是什么,可以使用同样的方法来得到所有的输入的值。

input

$name = Request::input('name');
1
$name = $request->get('name');
1

以上两种方法都可以实现,适用于在获取http请求提交的参数,‘name’为需要获取的提交的参数名称。

确定是否存在一个参数

//确定是否存在一个参数
if (Request::has('name'))
{
  //确定是否存在一个参数
}
1
2
3
4
5

只获取部分参数

//只获取部分参数
$formdata = Request::only('username', 'password');
1
2

除去某个参数

//除去某些参数
$formdata = Request::except('username', 'password');
1
2

获取除了’username’, ‘password’,所有Request请求中的参数

Cookies操作

Laravel 框架创建的所有的 Cookies 都是加密的,并且会签上一个认证的代码,意思就是如果这些 Cookies 在客户端那里被修改过,就会被认为是无效的 Cookies。
Laravel 框架自带的csrf令牌有有效的避免xss等攻击行为的出现。

获取cookie值

$value = Request::cookie('seodd');
1

获取了name为“seodd”的cookie的值

文件

file 方法返回来的对象是 Symfony\Component\HttpFoundation\File\UploadedFile 类的一个实例,这个类继承了 PHP 的 SplFileInfo 类,提供了很多方法可以跟文件交互。

检索一个上传了的文件

$file = Request::file('seodd');
1

注意文件类操作时候务必引用相关依赖的类‘use Symfony\Component\HttpFoundation\File\UploadedFile’

确定一个文件是否存在

if (Request::hasFile('seodd'))
{
  //确定是否存在seodd这个文件
}
1
2
3
4

laravel Request的所有方法详解

确定上传的文件是否有效

if (Request::file('seodd')- isValid())
{
  //确定是否存在seodd这个文件,是否是一个有效文件
}
1
2
3
4

获取url

laravel中我们常常需要获取当前的url,但是每个获取的都不一样,我们有时候需要获取的需求也不相同,所以我这里汇总一下,方便以后查询和使用。

// 返回当前页面的完整路径url: http://chateach.com/aa/bb
Request::url();
$request->url()

// 路径: /seo/suanfa
Request::path();
$request->path();

// 获取请求 Uri: /seo/suanfa/?c=d
Request::getRequestUri();
$request->getRequestUri();

// 获取 Uri: http://chateach.com/seo/suanfa/?c=d
Request::getUri();
$request->getUri();
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

检索请求方法

$method = Request::method();
if (Request::isMethod('post'))
{
  //判断是否是一个post请求
}
1
2
3
4
5

确定请求路径是否匹配一个模式

if (Request::is('seo/*'))
{
  //确认是否能够匹配到url路径为“seo/*”
}
1
2
3
4

获取url地址

//获取完成url地址
$url = Request::url();
//获取url路径部分
$url = Request::path();
1
2
3
4

获取请求的ip

$ip = $request->ip();
1

获取端口

$port = $request->getPort();
1

获取请求头信息

$res = $request->header('Connection')
1
申明:本站内容仅代表个人观点,仅供学习参考;未经授权任何个人或组织单位不得复制、转载、摘编以及其它形式的应用! 本站文章可能使用到互联网上的资料,若对您造成困扰,请联系 kk19@foxmail.com除理 本文地址:https://www.chateach.com/it/laravel/837
相关文章
  • SpringBoot中的异常处理的详细教程

    SpringBoot,异常处理

    SpringBoot中的异常处理的详细教程,处理用户请求出现运行时异常时直接响应给用户的是一个错误界面,对于用户的使用体验不友好。什么是全局异常处理机制,用来解决整个系统中任意一个控制器抛出异常时的统一处理入口,如何使用全局异常处理类 implements HandlerExceptionResolver,之后重写接口中的resolveException方法。

    933
    • SpringBoot
    • 异常处理
  • 百度富文本编辑器超链接添加nofollow

    编辑器添加nofollow

    如何给百度富文本编辑器超链接添加nofollow,即如何给百度文本编辑器添加一个nofollow标签添加的功能,可以方便文本编辑超链接的时候,对站外或者站内的链接添加nofollow标签,有效的防止站点权重的分散。

    1825
    • 编辑器添加nofollow
  • Laravel邮件发送功能的实现例子

    Laravel邮件发送

    Laravel如何发送邮件呢?Laravel邮件发送功能的实现例子,从邮箱注册配置到,laravel邮件参数配置,提供纯文本邮件和富文本邮件发送两种邮件发送实例。

    1573
    • Laravel邮件发送
  • vue框架简介及其优势

    vue框架,vue优势

    vue框架简介及其优势,Vue 是一套用于构建用户界面的渐进式JavaScript框架,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。。但是vue对于SEO并不是非常友好,及其解决方案。

    1510
    • vue框架
    • vue优势
  • php如何匹配特定的汉字字母英文preg_match_all方法实现

    preg_match_all,php匹配字符串

    php如何从字符串匹配特点的内容,preg_match_all如何匹配字符串内容,数字、字符、字母,正则匹配,php正则表达式中preg_match_all函数的详解。

    1015
    • preg_match_all
    • php匹配字符串
  • JavaScript == 与 === 区别

    == 与 === 区别

    js中==和===的区别 ==和===的区别和一些比较规则: == 在比较类型不同的变量时,会进行数据类型转化,将二者转换成数据类型相同的变量,再进行比较。对于 string、number 等基础类型,== 和 === 是有区别的 a)不同类型间比较,== 之比较 "转化成同一类型后的值" 看 "值" 是否相等,=== 如果类型不同,其结果就是不等。

    768
    • == 与 === 区别
  • OpenSSL 拒绝服务漏洞修复教程

    OpenSSL 拒绝服务漏洞

    OpenSSL 拒绝服务漏洞修复及版本升级教程。2020年12月08日,OpenSSL官方发布安全公告,披露CVE-2020-1971 OpenSSL GENERAL_NAME_cmp 拒绝服务漏洞。EDIPARTYNAME时,由于GENERAL_NAME_cmp函数未能正确处理,从而导致空指针引用,并可能导致拒绝服务。

    1031
    • OpenSSL 拒绝服务漏洞
  • css鼠标悬停变色:超链接字体随鼠标悬停颜色改变实现

    css鼠标悬停变色

    css设置超链接鼠标悬停字体上时字体变颜色,css设置鼠标悬停变色布局。鼠标悬停字体上文字变色,通常针对超链接锚文本字体颜色改变,使用了伪类:hover。

    1194
    • css鼠标悬停变色
  • lnmp环境简介

    lnmp环境简介

    LNMP是指一组通常一起使用来运行动态网站或者服务器的自由软件名称首字母缩写。L指Linux,N指Nginx,M一般指MySQL,也可以指MariaDB,P一般指PHP,也可以指Perl或Python。

    1280
    • lnmp环境简介
  • Vue 中使用 localStorage 详解

    localStorage,Vue

    什么是localStorage,与cookie的区别是什么,localStorage的生存期、数据结构、域名限制、浏览器支持;localStorage常用方法,存储数据setItem、读取数据getItem、修改数据、删除数据。

    1287
    • localStorage
    • Vue
  • 拥有一个博客网站需要多少钱

    博客网站

    如果你喜欢记录生活,那么拥有一个个人的博客网站还是非常不错的,从此你不再需要遵守任何平台的规则,只需要遵守我国法律即可。人生在世短短几十年,为短暂的人生留下点痕迹,成为数字世界的终极身份证。今天潘某人SEO就为大家大致的总结一下拥有一个自己网站需要哪几步并需要多少花费。

    127
    • 博客网站
  • springboot网站搭建部署详细流程

    springboot

    linux环境如何搭建java框架springboot,为大家演示一种快速简单的搭建springboot的方法。由于springboot是java的众多框架之一,因此需要部署好java的运行环境,即服务器安装好jdk18以及tomcat3,注意版本的兼容性。

    1212
    • springboot
  • Java实现哈希加解密(HmacSHA1、HmacMD5、HmacSHA256、HmacSHA512)

    Java哈希加解密

    什么是Hash,Java实现哈希加解密(HmacSHA1、HmacMD5、HmacSHA256、HmacSHA512),哈希算法不可逆,不同的源数据使用同样的哈希算法,可能会产生相同的哈希值,这被称之为碰撞率(collision rate),即使是 MD5 算法,碰撞率也非常小,小到几乎可以忽略不计。大约是 1.47*10的负29次方。

    1853
    • Java哈希加解密
  • .gitignore不生效问题解决方法

    gitignore不生效

    git push的时候 .gitignore中已经标明忽略的文件目录下的文件,git push的时候还会出现在push的目录中,或者用git status查看状态,想要忽略的文件还是显示被追踪状态。

    1037
    • gitignore不生效
  • centos系统如何修改超级管理员root用户名

    root用户名修改,centos系统

    centos系统修改超级管理员root用户名实例演示,只要简单的将超级管理员root用户修改掉,那么被暴力破解几率就会直线下降。

    1168
    • root用户名修改
    • centos系统
  • 原生js 复制内容到剪切板代码实现

    js 复制内容,剪切板代

    有时候为了提升用户体验,比如在某些页面需要实现点击内容,将内容复制到剪切板,可以提升用户复制内容的操作效率;因此在实际操作中通过一定的事件触发复制功能是非常有意义的行为,下面是两种通过原生js实现复制内容到剪切板。

    1086
    • js 复制内容
    • 剪切板代
  • 解决Incorrect result size: expected 1, actual 0异常

    Spring,queryForObject报错

    在Spring中使用queryForObject做数据库查询时出现如下异常Incorrect result size: expected 1, actual 0异常,是什么原因造成,如何解决呢?

    1336
    • Spring
    • queryForObject报错
  • DeepSeek一键部署,不用等待模型下载,创建即可使用。

    DeepSeek部署

    DeepSeek一键部署,不用等待模型下载,创建即可使用。腾讯云Cloud Studio 内置Ollama、多个DeepSeek-R1模型 ,每月向开发者提供 10000 分钟免费算力。

    176
    • DeepSeek部署
-- 这已经是底线了,看看别的把! --