У меня есть массив

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

Отправьте из формы, мне нужны 2 и 7, как мне их назвать?

Ключи - это идентификаторы частей, так что хочется. foreach получить идентификатор и значение, а затем что-то обновить ...

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

Может кто-нибудь сказать мне, как это сделать?

Заранее спасибо.

12
Rubberduck1337106092 25 Ноя 2016 в 17:22

4 ответа

Лучший ответ

Используйте обозначение $key => $value в foreach:

foreach ($request->except('_token') as $key => $part) {
  // $key gives you the key. 2 and 7 in your case.
}
17
Praveen Kumar Purushothaman 25 Ноя 2016 в 14:23

Если вы хотите получить доступ только к одному ключу $request, вы можете использовать:

$request->key_name

Для достижения этой цели.

Примере

Я отправлял image почтальоном вот так: Пример загрузки изображения почтальона

И я получил это в контроллере Laravel вот так:

public function store(SendMessageRequest $request)
{
    $image = $request->image; // this is what You need :)
    // ...
}
0
Aleksandar 4 Июн 2019 в 14:21

Используйте Collection для однострочного кода вместо foreach().

$requestKeys = collect($request->all())->keys();
0
Dani Fadli 31 Авг 2020 в 06:50
$data = $request->except('_token')
foreach($data as $id => $value){
    echo "My id is ". $id . " And My value is ". $value;
}
8
Md. Abu Taleb 25 Ноя 2016 в 14:25