Laravel hvordan få gjeldende rute navn?

Laravel hvordan få gjeldende rute navn?

Problem

Før jeg pleide å ta følgende kode for å hente gjeldende rutenavn. Lurer på om det endret seg i Laravel 5 eller 6 ?

Rute :: CurrentRoutename ()

Hvordan kan jeg gjøre det i laravel v5 og laravel v6?

Løsning

Du kan sannsynligvis starte med dette

Rute :: getCurrentRoute ()-> getPath ();

eller hvis det ikke fungerer, her er et annet alternativ

\ Request :: Route ()-> getName ()

Laravel v5.2

Rute :: CurrentRoutename (); // bruk belysning \ støtte \ fasader \ rute;

Eller hvis du trenger handlingsnavnet

Rute :: getCurrentRoute ()-> getActionName ();

Laravel 5.2 Rute dokumentasjon

Hente forespørselen URI

Banemetoden returnerer forespørselsens URI. Så hvis den innkommende forespørselen er målrettet mot https: // laravel-recipes.com/foo/bar, banemetoden kommer tilbake foo/bar:

$ uri = $ forespørsel-> sti ();

IS -metoden lar deg bekrefte at den innkommende forespørselen Uri samsvarer med et gitt mønster. Du kan bruke * karakteren som et jokertegn når du bruker denne metoden:

if ($ forespørsel-> er ('admin/*'))
//

For å få hele URL -en, ikke bare Path -informasjonen, kan du bruke URL -metoden på forespørsel om forespørsel:

$ url = $ forespørsel-> url ();

Laravel v5.3… v5.8

$ rute = rute :: strøm ();
$ name = rute :: currentRoutename ();
$ Handling = Rute :: CurrentRouteAction ();

Laravel 5.3 Rute dokumentasjon

Laravel v6.x

$ rute = rute :: strøm ();
$ name = rute :: currentRoutename ();
$ Handling = Rute :: CurrentRouteAction ();

** Strøm fra 11. november 2019 - versjon 6.5 **

Laravel 6.x Rute dokumentasjon

Det er et alternativ å bruke forespørsel for å få rute

$ Request-> Route ()-> getName ();