要将当前URL的全局变量传递给Laravel分组路由,可以使用Laravel的中间件来实现。下面是一个解决方法,包含了代码示例:
URLVariableMiddleware
,可以使用以下命令来生成该类:php artisan make:middleware URLVariableMiddleware
URLVariableMiddleware
类的handle
方法中,获取当前URL的全局变量,并将其存储到Laravel的request
对象中,以便在后续的请求中可以访问到。merge(['url_variable' => $urlVariable]);
return $next($request);
}
}
app/Http/Kernel.php
文件的$routeMiddleware
数组中注册中间件。protected $routeMiddleware = [
// ...
'url.variable' => \App\Http\Middleware\URLVariableMiddleware::class,
];
Route::middleware('url.variable')->group(function () {
Route::get('/example', function (Illuminate\Http\Request $request) {
$urlVariable = $request->input('url_variable');
// 使用URL全局变量进行逻辑处理
return view('example')->with('urlVariable', $urlVariable);
});
});
通过以上步骤,你可以将当前URL的全局变量传递给Laravel分组路由,并在路由处理函数中进行使用。请根据实际需要和情况,对代码进行适当的调整。