По-моему, ваш первый вариант верен.
во втором варианте вы объявляете новую переменную и увеличиваете свой стек памяти, который не нужен.
Таким образом, вы должны получить значение из переменной, которая уже создана.
Более того, вместо того, чтобы получать входное значение из функции ввода, вы можете напрямую получить доступ к свойству $ request как $groupid = Group::where('name', $request->groupname)->select('id')->first();
Это мое мнение, может быть другой вариант.