Laravel-Anforderung, die den aktuellen Pfad mit der Abfragezeichenfolge erhält

Lesezeit: 2 Minuten

Benutzer-Avatar
John Bupit

Gibt es eine Laravel-Methode, um den aktuellen Pfad einer Anfrage mit ihren Abfrageparametern abzurufen?

Zum Beispiel für die URL:

http://www.example.com/one/two?key=value

Request::getPathInfo() würde zurückkehren /one/two.

Request::url() würde zurückkehren http://www.example.com/one/two.

Die gewünschte Ausgabe ist /one/two?key=value.

Benutzer-Avatar
Hubert Dziubiński

Versuchen Sie Folgendes zu verwenden:

\Request::getRequestUri()

  • Dies sollte die akzeptierte Antwort sein. Es gibt genau das zurück, was OP will. Funktioniert gut auf 5.2.

    – Jamie

    22. September 2017 um 18:56 Uhr

Benutzer-Avatar
Thomas Bolander

Laravel 4.5

Benutz einfach

Request::fullUrl()

Es wird die vollständige URL zurückgegeben

Sie können den Querystring mit str_replace extrahieren

str_replace(Request::url(), '', Request::fullUrl())

Oder Sie können ein Array aller Abfragen mit erhalten

Request::query()

Laravel >5.1

Benutz einfach

$request->fullUrl()

Es wird die vollständige URL zurückgegeben

Sie können den Querystring mit str_replace extrahieren

str_replace($request->url(), '',$request->fullUrl())

Oder Sie können ein Array aller Abfragen mit erhalten

$request->query()

  • in neueren Versionen von Laravel verwenden $request Instanz, anstatt die Funktion von Request statisch aufzurufen

    – DivineCoder

    31. August 2017 um 10:22 Uhr

  • In meinem Fall wollte ich, dass die Reihenfolge der Abfrageparameter erhalten bleibt, aber fullUrl ändert auf mysteriöse Weise die Reihenfolge meiner Parameter. ich musste in reinem php dann auf $actual_link = (isset($_SERVER[‘HTTPS’]) ? “https” : “http”) . “://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]”;

    – DivineCoder

    31. August 2017 um 10:46 Uhr

  • Request::fullUrl() funktionierte perfekt auf Laravel 4.

    – nensamuel

    15. April 2019 um 12:27 Uhr

  • $request->query() genial in 5.4

    – Mirko

    10. Dezember 2019 um 14:22 Uhr

Anfrage Klasse bietet keine Methode, die genau das zurückgibt, was Sie brauchen. Aber Sie können es leicht bekommen, indem Sie die Ergebnisse von 2 anderen Methoden verketten:

echo (Request::getPathInfo() . (Request::getQueryString() ? ('?' . Request::getQueryString()) : '');

  • Ja, es gibt unzählige andere Möglichkeiten: str_replace(url(), '', Request::fullUrl())

    – Johannes Bupit

    22. Juli 2015 um 8:15 Uhr


  • request()->getQueryString() hat den zusätzlichen Vorteil, dass es im Blade verfügbar ist, ohne dass seltsame Includes oder Variablen übergeben werden, wenn Sie URLs im Inhalt ändern müssen.

    – Spencer O’Reilly

    12. Mai 2017 um 16:19 Uhr

  • Tatsächlich gibt es eine Methode, die genau die vollständige URL zurückgibt … Die folgende Antwort funktioniert auch in Laravel 5

    – Mladen Janjetović

    6. September 2018 um 9:11 Uhr

Rufen Sie die aktuelle URL einschließlich der Abfragezeichenfolge ab.

echo url()->full();

Benutzer-Avatar
Yada

$request->fullUrl() wird auch funktionieren, wenn Sie injizieren Illumitate\Http\Request.

Benutzer-Avatar
Garrick Crouch

Wenn Sie Zugriff auf die haben Request $request Objekt können Sie auch die nicht statische Methode verwenden

$request->getRequestUri()

Benutzer-Avatar
Leonardo Webster

Das einfachste, was ich gefunden habe, ist dieses:

$request->getPathInfo()

  • Die Frage war, den vollständigen Pfad einschließlich der Abfragezeichenfolge zu erhalten. Die Frage erwähnt bereits, dass die getPathInfo() Methode hat dafür nicht funktioniert.

    – Mike32

    21. Januar um 0:17 Uhr

1351470cookie-checkLaravel-Anforderung, die den aktuellen Pfad mit der Abfragezeichenfolge erhält

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy