在Laravel v4中,我可以使用…
Route::currentRouteName()
我如何在Laravel v5和Laravel v6中做到这一点?
在Laravel v4中,我可以使用…
Route::currentRouteName()
我如何在Laravel v5和Laravel v6中做到这一点?
当前回答
它不需要记忆任何东西,当你想请求某个变量时,通过dd(Request())可以评估哪个变量对你来说是突出的。 在下图中,它很清楚。
如果你想获取路径,显然,这段代码会显示
dd(request()->getpathInfo())
别忘了嵌入 使用说明\ Http \请求; 例如:
if(request()->getpathInfo()=="/logadmin"){
do somethings....
}
其他回答
您要做的第一件事是在类的顶部导入命名空间。
use Illuminate\Support\Facades\Route;
拉拉维尔V8
$route = Route::current(); // Illuminate\Routing\Route
$name = Route::currentRouteName(); // RouteName
$action = Route::currentRouteAction(); // Action
Laravel v7、6和5.8
$route = Route::current();
$name = Route::currentRouteName();
$action = Route::currentRouteAction();
找到了一种查找当前路由名称的方法,适用于laravel v5, v5.1.28和v5.2.10
名称空间
use Illuminate\Support\Facades\Route;
and
$currentPath= Route::getFacadeRoot()->current()->uri();
对于Laravel Laravel v5.3,你可以使用:
use Illuminate\Support\Facades\Route;
Route::currentRouteName();
如果你需要url,而不是路由名,你不需要使用/需要任何其他类:
url()->current();
\Request::path()
我用这个来获取当前uri
在控制器中访问当前路由名
Ie - http://localhost/your_project_name/edit
$request->segment(1); // edit
(或)
$request->url(); // http://localhost/your_project_name/edit