zoukankan      html  css  js  c++  java
  • laravel 请求request 接收参数

    获取请求输入

    获取所有输入值

    你可以使用 all 方法以数组格式获取所有输入值:

    $input = $request->all();
    

    获取单个输入值

    使用一些简单的方法,就可以从 IlluminateHttpRequest 实例中访问用户输入。你不需要关心请求所使用的 HTTP 请求方法,因为对所有请求方式的输入都是通过 input 方法获取用户输入:

    $name = $request->input('name');
    

    你还可以传递一个默认值作为第二个参数给 input 方法,如果请求输入值在当前请求未出现时该值将会被返回:

    $name = $request->input('name', 'Sally');
    

    处理表单数组输入时,可以使用”.”来访问数组输入:

    $input = $request->input('products.0.name');
    $names = $request->input('products.*.name');
    

    通过动态属性获取输入

    此外,你还可以通过使用 IlluminateHttpRequest 实例上的动态属性来访问用户输入。例如,如果你的应用表单包含 name 字段,那么可以像这样访问提交的值:

    $name = $request->name;
    

    使用动态属性的时候,Laravel 首先会在请求中查找参数的值,如果不存在,还会到路由参数中查找。

    获取JSON输入值

    发送JSON请求到应用的时候,只要 Content-Type 请求头被设置为 application/json,都可以通过 input 方法获取 JSON 数据,还可以通过“.”号解析数组:

    $name = $request->input('user.name');
    

    获取输入的部分数据

    如果你需要取出输入数据的子集,可以使用 only 或 except 方法,这两个方法都接收一个数组或动态列表作为唯一参数:

    $input = $request->only(['username', 'password']);
    $input = $request->only('username', 'password');
    
    $input = $request->except(['credit_card']);
    $input = $request->except('credit_card');
    

    only 方法返回你所请求的所有键值对,即使输入请求中不包含你所请求的键,当对应键不存在时,对应返回值为 null,如果你想要获取输入请求中确实存在的部分数据,可以使用 intersect 方法:

    $input = $request->intersect(['username', 'password']);
    

    判断输入值是否存在

    判断值是否在请求中存在,可以使用 has 方法,如果值出现过了且不为空,has 方法返回 true

    if ($request->has('name')) {
        //
    }
  • 相关阅读:
    关于各种编程语言调用C星寻路插件的例子
    练习作品11:语音识别 准确度70%
    练习作品10:被一个傻叉坑了 要求把串口 封装到DLL中调用;
    Dynamics CRM 构建IN查询
    初识Spark2.0之Spark SQL
    从Dynamics CRM2011到Dynamics CRM2016的升级之路
    Dynamics CRM2011 导入解决方案报根组件插入错误的解决方法
    基于hadoop的BI架构
    Dynamics CRM 不同的站点地图下设置默认不同的仪表板
    Dynamics CRM 打开数据加密报错及修改用户邮件保存报错的解决方法
  • 原文地址:https://www.cnblogs.com/djwhome/p/8874623.html
Copyright © 2011-2022 走看看