2
votes

Obtenir l'URL actuelle dans Laravel 5.7

Je suis conscient que dans les versions précédentes de Laravel (par exemple 4), on pouvait obtenir l'URI actuel via

Route::current()->uri();

Cependant, cela ne semble pas fonctionner dans Laravel 5.7 ou version ultérieure . Je me demande comment il devrait être réécrit. Veuillez noter que j'accède à l'URI dans une vue en lame et que je ne peux donc pas utiliser de méthodes non statiques.


1 commentaires

URI est un terme plus générique qui couvre les URL (y compris d'autres choses). Dans le contexte d'une page Web, il n'y a pas de différence entre l'URI et l'URL


3 Réponses :


4
votes

Cela devrait toujours fonctionner - mais cela peut ne pas fonctionner comme prévu si le chemin actuel n'est pas nommé. Vous devriez probablement à la place obtenir le chemin de la requête.

Request::root();
Request::url();
Request::fullUrl();
Request::fullUrlWithQuery();

Cela vérifie probablement également l'API de l'instance de requête car il existe un certain nombre de méthodes connexes que vous pouvez appeler.

Request::path();


0 commentaires

0
votes
public function yourMethod(Request $request)
{
    return view('your-view', [ 'current-uri' => $request->route()->uri() ]);
}
Documentation

1 commentaires

Oui, mais je ne peux pas appeler url () -> current () -> uri () .



5
votes

Vous pouvez obtenir l'URL actuelle dans laravel en utilisant les méthodes suivantes.

use Illuminate\Support\Facades\URL;

echo URL::current();

Chacune de ces méthodes est également accessible via la façade URL:

// Get the current URL without the query string...
echo url()->current();

// Get the current URL including the query string...
echo url()->full();

// Get the full URL for the previous request...
echo url()->previous();

Pour plus d'informations, vous pouvez lire la documentation complète ici .


0 commentaires