Вы всё еще мучаетесь? =))
Дело в том, что невыбранный чекбокс
не отправляется.
В самом ларавел можно использовать хуки в запросах и модифицировать входящие данные до валидации.
Если это кажется сложным или просто не хочется, то существует своего рода хак, чтобы исправить подобное поведение чекбоксов.
<input type="hidden" value="0" name="days[{{$key}}][day]">
<input type="checkbox" value="1" name="days[{{$key}}][day]"> {{$value}}
Если в форме присутствуют два поля с одинаковым именем, то будет отправлено последнее из них. То есть, если чекбокс выбран, то будет отправлено значение "1", если нет, то отправится значение "0".
Таким образом, в приходящем массиве у вас всегда будет заполненное поле.