在Laravel v4中,我可以使用…

Route::currentRouteName()

我如何在Laravel v5和Laravel v6中做到这一点?


当前回答

在5.2中,你可以直接使用请求:

$request->route()->getName();

或者通过helper方法:

request()->route()->getName();

输出的例子:

"home.index"

其他回答

$request->route()->getName();

如果你需要url,而不是路由名,你不需要使用/需要任何其他类:

url()->current();

要求::路径();更好,记住使用Request;

它不需要记忆任何东西,当你想请求某个变量时,通过dd(Request())可以评估哪个变量对你来说是突出的。 在下图中,它很清楚。

如果你想获取路径,显然,这段代码会显示

dd(request()->getpathInfo())

别忘了嵌入 使用说明\ Http \请求; 例如:

if(request()->getpathInfo()=="/logadmin"){
do somethings....
}

你可以在模板中使用:

<?php $path = Route::getCurrentRoute()->getPath(); ?>
<?php if (starts_with($path, 'admin/')) echo "active"; ?>