Что делать, если исключение создается в некотором коде, который выше объявления переменной. Это означает, что сама декларация не была в этом случае.
try {
//doSomeWork // Exception is thrown in this line.
String s;
//doRestOfTheWork
} catch (Exception) {
//Use s;//Problem here
} finally {
//Use s;//Problem here
}
Для передачи параметров в маршруте используйте массив с именами параметров в качестве ключей:
{{ route('shop.order.test', ['id' => $id, 'grouping' => $form['grouping']]) }}