Имею такой кусок формы в вёрстке (на самом деле форма сложнее, просто для понимания проблемы):
<form action="/getData" method="POST">
<input type="checkbox" name="city[]" id="city1">
<label for="city1">город 1</label>
<input type="checkbox" name="city[]" id="city2">
<label for="city2">город 2</label>
<hr>
<input type="checkbox" name="color[]" id="color1">
<label for="color1">город 1</label>
<input type="checkbox" name="color[]" id="color2">
<label for="color2">город 2</label>
</form>
При отправке такой формы контроллер (Laravel) принимает в $request два массива:
$request->city
$request->color
Форма будет динамически изменяться. Имена этих массивов тоже будут любые. Они (имена массивов) вообще мне не нужны.
Как в вёрстке указать имена, чтобы данные приходили в виде одного массива с постоянным именем filters, а в нём уже находились те массивы, которые есть на форме. Типа такой структуры:
filters[
city['0'=>'city1', '1'=>'city2'],
color['0'=>'color1', '1'=>'color2']
]
Мне нужно циклом перебрать массив filters и в каждой итерации циклом перебрать элементы вложенных массивов.
Или, если невозможно в вёрстке создать такую структуру, как в контроллере PHP (Laravel) перебрать $request и найти в нём все массивы.
Я пробовал так, не работает:
$arrCount = 0;
foreach ($request as $value) {
if(is_array($value)){
$arrCount++;
}
}
dd($arrCount);