Laravel-从请求中获取所有复选框值

时间:2019-03-01 13:51:47

标签: laravel

我在HTML中有这样的复选框:

<input type="checkbox" name="models" value="ipad">
<input type="checkbox" name="models" value="ipod">

我正在Request对象中获取整个表单值,它包含这样的复选框值:

  

&models = ipad&models = ipod

我正在尝试提取数组中的所有这些值,如下所示:

[“ ipad”,“ ipod”]

我已经尝试过,但是没有用:

$request->input('models')
$request->input('models.*')
$request->all()

也无效:

<input type="checkbox" name="models[]" value="ipad">

4 个答案:

答案 0 :(得分:1)

这应该有效:

<input type="checkbox" name="models[]" value="ipad">
<input type="checkbox" name="models[]" value="ipod">

答案 1 :(得分:0)

尝试以下代码:

<input type="checkbox" name="models[]" value="ipad">
<input type="checkbox" name="models[]" value="othervalue">

如果您将models[]添加为数组,则可以遍历所选值,例如:

foreach($request->input('models') as $value){
  // $value
}

答案 2 :(得分:0)

假设您使用的是这样

<form method="get" action="{{ url('/testing') }}">
  @csrf
  <input type="checkbox" name="models[]" value="ipad">
  <input type="checkbox" name="models[]" value="ipod">
   <input type="submit" name="submit">
 </form>
Then in response you get

Array
(
    [_token] => XhkdiOqbv24qhT4TnkT1liLm3GAyvTTt78vaDbBO
    [models] => Array
        (
            [0] => ipad
            [1] => ipod
        )

    [submit] => Submit Query
)


so finally you get array by $request->models

on print_r($request->models) you will get

Array
(
    [0] => ipad
    [1] => ipod
)

答案 3 :(得分:0)

尝试

<input type="checkbox" name="models[]" value="ipad">
<input type="checkbox" name="models[]" value="ipod">

并在您的控制器中:

  $request->models