如何从laravel表单请求获取密钥?

时间:2016-11-25 14:22:10

标签: php laravel laravel-5

我有一个数组

array:2 [▼
  2 => "12"
  7 => "12"
]

从表格发送,我需要2和7如何称呼它们?

键是所有想要的部分ID。 foreach获取ID和值 然后更新一些东西......

foreach($request->except('_token') as $part) {
    /*get Key here (in this case 2 or 7) and get value here (in this case both 12)*/
}

有人能告诉我怎么做吗?

提前致谢。

5 个答案:

答案 0 :(得分:13)

foreach中使用$key => $value表示法:

foreach ($request->except('_token') as $key => $part) {
  // $key gives you the key. 2 and 7 in your case.
}

答案 1 :(得分:6)

$data = $request->except('_token')
foreach($data as $id => $value){
    echo "My id is ". $id . " And My value is ". $value;
}

答案 2 :(得分:0)

如果您只想访问一个$request键,则可以使用:

$request->key_name

实现这一目标。

示例

我在这样的邮递员中发送imagePostman image upload example

我像这样在Laravel的控制器中得到它:

public function store(SendMessageRequest $request)
{
    $image = $request->image; // this is what You need :)
    // ...
}

答案 3 :(得分:0)

Collection用作单行代码,而不是foreach()

$requestKeys = collect($request->all())->keys();

答案 4 :(得分:0)

我认为这里的答案不正确。

他们回答问题,但问题似乎是建立在不好的做法上的。

视图应如下所示:

@foreach ($arrayItems as $arrayItem)
    <input type="text" name="arrayItems[{{ $arrayItem->id }}]">
@endforeach

那么您的请求将如下所示:

"arrayItems" => [
    2 => "12",
    7 => "12"
]

现在您可以使用 foreach ($request->arrayItems as $key => $arrayItem) {...} 或在任何需要时使用

注意:arrayItems 是在 usersposts 等上下文中应该使用的任何变量名称的占位符名称