Laravel获取各种参数的方法

来源:互联网 发布:淘客网页源码 编辑:程序博客网 时间:2024/06/05 22:36

Laravel获取路由的参数分为以下几种情况:

1、控制器里面获取路由参数

这是最常见的获取参数形式了,分以下两种情况:

1.1、post参数获取

获取所有参数:

public function getCity(Request $request) {    $id = $request->only(['id','name','password']);  #获取部分参数    $input=$request->all();  #获取所有参数    $input_many=$request->except(['_token','create_time']); #获取除了_token和create_time意外的所有参数

也可以使用帮助方法:

 $input=request()->all();   #其他雷同!

1.2、get参数获取

public function readOrganization($id,$name='test') {    $list = Organization::with([        'authcodes' => function ($query) {            $query->select('organization_id', 'auth_code');        },    ])        ->find($id);

看到了吧,直接在方法传入的时候获取,直接用就行,也可以赋予初始值,注意,参数名字必须和路由参数保持一致!

视图里面获取路由参数,一般是get参数

action="{{ url('/admin/customer/index',[request()->route('customer_type')])}}

看到了吧?request()->route(‘customer_type’);或者直接request()->customer_type;就可以获取到你路由设置的参数了,再利用url的第二个参数,就可以直接拼接需要跳转的url了,是不是很方便?

<form class="form-inline" method="get" action="{{ url('/admin/customer/index',[request()->route('customer_type')])}}">        <div class="form-group" style="margin-left: 20px">            <label for="perPage">每页显示数:</label>            <select class="form-control" id="perPage" name="perPage">                @foreach ( [10,20,30,50] as $e)                <option value="{{$e}}" {{ $e==request('perPage') ? 'selected' : '' }} >{{$e}}</option>                @endforeach            </select>        </div>        <div class="form-group" style="margin-left: 20px">            <label for="search">模糊搜索:</label>            <input type="text" name="search" style="width: 400px" class="form-control" id="search" placeholder="请输入机构名或者邮箱或者电话" value="{{request('search')}}">        </div>        <button type="submit" class="btn btn-primary" style="margin-left: 20px">开始搜索</button></form>