Maison > cadre php > Laravel > le corps du texte

Requête HTTP laravel : obtenir les informations d'entrée

齐天大圣
Libérer: 2020-12-15 09:27:27
original
1995 Les gens l'ont consulté

Obtenir des commentaires dans le framework Laravel est très pratique. Il fournit une variété de méthodes pour obtenir des commentaires.

Utilisez l'instance IlluminateHttpRequest dans Laravel pour accepter la demande, comme suit

use Illuminate\Http\Request;

$request = new Request();
echo $request->method();
Copier après la connexion

peut utiliser une méthode d'injection automatique simple, utilisez ce qui suit :

<?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());    
    }
}
Copier après la connexion

Obtenir le chemin de la requête et la méthode de requête

L'obtention de la méthode de requête est très simple, il suffit d'utiliser la méthode méthode. De plus, il existe une méthode pour déterminer l'action de la requête en cours isMethod

if ($request->isMethod(&#39;post&#39;)) {
    // ...
}
Copier après la connexion

Il existe plusieurs méthodes pour obtenir le chemin de la requête, et il existe des différences entre elles. Par exemple, pour une adresse URL : http://. example.com/ path1/path2?a=23&b=3, les valeurs pouvant être obtenues par les trois méthodes sont les suivantes :

  • path() : Récupère le chemin, path1/path2

  • url() : Obtenez l'adresse URL, mais ne la contient pas ? et la chaîne suivante. http://example.com/path1/path2

  • fullUrl() : obtenez le chemin complet. http://example.com/path1/path2?a=23&b=3

Obtenir des commentaires

ci-dessous Obtenez des commentaires sous plusieurs aspects, tels que l'obtention de toutes les entrées ou l'obtention d'une seule entrée pour obtenir une partie de l'entrée, etc.

Obtenir toutes les entrées

Il existe deux façons d'obtenir toutes les entrées, all() et input(). Ne pas ajouter de paramètres à l'entrée signifie tout accepter :

$request->all();
// or
$request->input();
Copier après la connexion

Obtenir une entrée

Obtenir une entrée utilise également entrée méthode, mais donnez le premier paramètre, qui représente la valeur du champ à obtenir.

$request->input(&#39;name&#39;);
Copier après la connexion

input peut également accepter un deuxième paramètre, qui est la valeur par défaut définie lorsqu'aucune valeur de champ n'est obtenue. Par exemple :

$request->input(&#39;name&#39;, &#39;php.cn&#39;);
Copier après la connexion

De plus, la saisie peut également obtenir des valeurs numériques et des données json Lors de l'obtention, utilisez l'opérateur «.»

$request->input(&#39;users.name&#39;);
$request->input(&#39;users.0.name&#39;);
$request->input(&#39;users.*.name&#39;);
Copier après la connexion

En plus de. la méthode de saisie, il existe également une méthode query qui peut également obtenir une entrée, mais la différence entre elles est que l'entrée peut obtenir une entrée à partir du formulaire et de la chaîne de requête, tandis que la méthode de requête ne peut obtenir qu'une entrée à partir de la chaîne de requête. L'utilisation de la méthode de requête et de la méthode de saisie est la même, elles ne seront donc pas démontrées ici.

Il existe également une méthode simple pour obtenir une entrée, appelée obtention dynamique d'une entrée, qui peut obtenir une entrée directement via des attributs. Par exemple, si le formulaire contient un champ de nom, vous pouvez obtenir

$request->name;
Copier après la connexion

via la méthode suivante. Cependant, il convient de noter que Laravel recherchera d'abord les paramètres dans le corps de la requête. Si la valeur n'existe pas, elle est recherchée à partir des paramètres de l'itinéraire.

Obtenir une valeur booléenne

Laravel fournit une fonction qui obtient la valeur du champ et la convertit activement en valeur de type booléen. La méthode est booléenne.

if ($request->boolean(&#39;name&#39;)) {
    // ...
}
Copier après la connexion

Juger si une valeur existe

Il existe plusieurs façons de juger si une valeur d'entrée existe, et l'utilisation est légèrement différente. has et filled peuvent être utilisés pour déterminer si la valeur d'entrée existe, mais la différence est la suivante : has renvoie true tant que la valeur du champ existe. Et non seulement rempli existe, mais il ne doit pas non plus être vide pour renvoyer vrai.

has peut également être utilisé pour juger plusieurs champs. Si plusieurs valeurs de champ existent, il renvoie vrai, sinon il renvoie faux

if ($request->has([&#39;name&#39;, &#39;email&#39;])) {}
Copier après la connexion

Et hasAny renvoie vrai uniquement s'il existe une valeur de champ

has peut également être utilisé pour juger plusieurs champs. 🎜>
if ($request->hasAny([&#39;name&#39;, &#39;email&#39;])) {}
Copier après la connexion

Obtenir une entrée partielle

Laravel peut également obtenir une entrée partielle, en utilisant uniquement ou à l'exception des méthodes, leur utilisation et leurs fonctions sont exactement les mêmes. Renvoie un tableau associatif :

$request->only(&#39;name&#39;, &#39;email&#39;);
// or
$request->only([&#39;name&#39;, &#39;email&#39;]);
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal