Heim  >  Artikel  >  PHP-Framework  >  Laravel-HTTP-Anfrage: Eingabeinformationen abrufen

Laravel-HTTP-Anfrage: Eingabeinformationen abrufen

齐天大圣
齐天大圣Original
2020-12-14 19:02:141982Durchsuche

Das Einholen von Eingaben im Laravel-Framework ist sehr praktisch. Es bietet eine Vielzahl von Methoden zum Einholen von Eingaben.

Verwenden Sie die IlluminateHttpRequest-Instanz in Laravel, um Anfragen wie folgt anzunehmen ist sehr einfach, die Verwendung der Methode Methode reicht aus. Darüber hinaus gibt es eine Methode zur Ermittlung der aktuellen Anforderungsaktion

use Illuminate\Http\Request;

$request = new Request();
echo $request->method();

Es gibt mehrere Methoden zum Abrufen des Anforderungspfads, und es gibt Unterschiede zwischen ihnen. Beispielsweise für eine URL-Adresse: http://example.com/. Pfad1/Pfad2? die URL-Adresse, enthält diese aber nicht? und die folgende Zeichenfolge. http://example.com/path1/path2

fullUrl(): Den vollständigen Pfad abrufen. http://example.com/path1/path2?a=23&b=3 Holen Sie sich einen Teil der Eingabe usw. .

Alle Eingaben abrufen

    Es gibt zwei Möglichkeiten, alle Eingaben abzurufen: all() und input(). Keine Parameter zur Eingabe hinzuzufügen bedeutet, alles zu akzeptieren:
  • <?php
    namespace App\Http\Controllers;
    
    use Illuminate\Http\Request;
    use Illuminate\Support\Facades\Route;
    
    class IndexController extends Controller
    {
        public function index (Request $request)
        {
            dump($request->method());    
        }
    }

  • Holen Sie sich eine Eingabe
  • Holen Sie sich eine Eingabe, verwenden Sie auch die Methode
  • input

    , geben Sie jedoch den ersten Parameter an, der das Feld darstellt, das abgerufen werden muss Wert.

    if ($request->isMethod(&#39;post&#39;)) {
        // ...
    }
  • input kann auch einen zweiten Parameter akzeptieren, der der Standardwert ist, der festgelegt wird, wenn kein Feldwert erhalten wird. Zum Beispiel:
$request->all();
// or
$request->input();

Darüber hinaus kann die Eingabe auch numerische Werte und JSON-Daten abrufen. Verwenden Sie den Operator "."

$request->input(&#39;name&#39;);
Zusätzlich zur Eingabemethode gibt es auch eine

Abfragemethode Erhalten Sie Eingaben, aber der Unterschied zwischen ihnen besteht darin, dass Eingaben Eingaben aus dem Formular und der Abfragezeichenfolge erhalten können, während die Abfragemethode nur Eingaben aus der Abfragezeichenfolge erhalten kann. Die Verwendung der Abfragemethode und der Eingabemethode ist identisch und wird daher hier nicht demonstriert.

Es gibt auch eine einfache Möglichkeit, Eingaben abzurufen, die als dynamisches Abrufen von Eingaben bezeichnet wird und Eingaben direkt über Attribute erhalten kann. Wenn das Formular beispielsweise ein Namensfeld enthält, können Sie es über die folgende Methode erhalten:

$request->input(&#39;name&#39;, &#39;php.cn&#39;);
Beachten Sie jedoch, dass Laravel zunächst im Anforderungstext nach Parametern sucht. Wenn der Wert nicht vorhanden ist, wird er in den Routenparametern nachgeschlagen.

Holen Sie sich einen Bool-Wert

laravel stellt eine Funktion bereit, die den Feldwert abruft und ihn aktiv in einen Wert vom Typ Bool umwandelt. Die Methode ist boolesch.

$request->input(&#39;users.name&#39;);
$request->input(&#39;users.0.name&#39;);
$request->input(&#39;users.*.name&#39;);

Bestimmen Sie, ob ein Wert vorhanden ist

Es gibt mehrere Möglichkeiten, um festzustellen, ob ein Eingabewert vorhanden ist, und die Verwendung unterscheidet sich geringfügig. Sowohl

has als auch filled

können verwendet werden, um zu bestimmen, ob der Eingabewert existiert, aber der Unterschied ist: has gibt true zurück, solange der Feldwert existiert. Und gefüllt existiert nicht nur, sondern darf auch nicht leer sein, um wahr zurückzugeben.

has kann auch verwendet werden, um mehrere Feldwerte zu beurteilen, es gibt true zurück, andernfalls gibt es false zurück

$request->name;

Und hasAny gibt nur true zurück, wenn ein Feldwert vorhanden ist

Teileingabe erhalten

Laravel kann auch teilweise Eingaben erhalten, indem es nur oder außer Methoden verwendet, deren Verwendung und Funktionen genau gleich sind. Zurückgegeben wird ein assoziatives Array:

if ($request->boolean(&#39;name&#39;)) {
    // ...
}

Das obige ist der detaillierte Inhalt vonLaravel-HTTP-Anfrage: Eingabeinformationen abrufen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn