Maison cadre php Laravel Développement Laravel : Comment valider les données de la requête à l'aide de Laravel Validation ?

Développement Laravel : Comment valider les données de la requête à l'aide de Laravel Validation ?

Jun 14, 2023 am 08:35 AM
laravel validation 请求数据

Développement Laravel : Comment utiliser Laravel Validation pour valider les données de la demande ?

Laravel est l'un des frameworks PHP les plus populaires actuellement. L'une des raisons est qu'il fournit de nombreux excellents composants, dont Laravel Validation. Dans le processus de développement Web, nous devons souvent vérifier si les données soumises depuis le front-end sont conformes aux spécifications, telles que la soumission de formulaires, etc. À l'heure actuelle, nous devons utiliser le composant de validation Laravel pour la vérification des données.

Cet article présentera l'utilisation de base et des exemples de Laravel Validation.

  1. Présentation de la validation

Introduire le validateur dans le contrôleur :

use IlluminateSupportFacadesValidator;
Copier après la connexion
  1. Règles de validation

Laravel Validation prend en charge une variété de règles de validation différentes, notamment celles requises, l'e-mail, la date, etc. Nous pouvons choisir en fonction de nos besoins. Le tableau suivant répertorie quelques règles couramment utilisées :

Règle Description
obligatoireObligatoire
emailFormat de l'e-mail
dateFormat de la date
regexCorrespondance régulière
maxLongueur maximale
minLongueur minimale
  1. Construction du validateur

L'utilisation de Laravel Validaton nécessite ing un premier dispositif de validation, qui peut être passé par différents Méthode de construction, telle que :

  • Utilisez la méthode make de la façade Validator :
public function validate(Request $request)
{
  $validator = Validator::make($request->all(), [
    'name' => 'required|max:255',
    'email' => 'required|email|unique:users|max:255',
    'password' => 'required|min:6|max:255',
  ]);

  if ($validator->fails()) {
    return redirect('register')
      ->withErrors($validator)
      ->withInput();
  }

  // 验证通过,执行代码
}
Copier après la connexion
  • Utilisez la vérification de la demande :
public function rules()
{
  return [
    'name' => 'required|max:255',
    'email' => 'required|email|unique:users|max:255',
    'password' => 'required|min:6|max:255',
  ];
}

public function register(Request $request)
{
  $this->validate($request, $this->rules());

  // 验证通过,执行代码
}
Copier après la connexion
  1. Message d'erreur de vérification

Si la vérification échoue, vous pouvez obtenir le message d'erreur via la méthode withErrors, telle que :

if ($validator->fails()) {
  return redirect('register')
    ->withErrors($validator)
    ->withInput();
}
Copier après la connexion

Appelez ensuite la variable $errors dans la vue pour obtenir le message d'erreur correspondant :

@if ($errors->has('name'))
  <span class="help-block">
    <strong>{{ $errors->first('name') }}</strong>
  </span>
@endif
Copier après la connexion
  1. Message d'erreur personnalisé

Dans le deuxième paramètre de la construction du validateur, vous pouvez définir le message d'erreur personnalisé Fournissez des invites plus spécifiques pour les erreurs de validation, telles que :

public function rules()
{
  return [
    'name' => 'required|max:255',
    'email' => 'required|email|unique:users|max:255',
    'password' => 'required|min:6|max:255',
  ];
}

public function messages()
{
  return [
    'name.required' => '名称不能为空',
    'email.required' => '邮箱不能为空',
    'email.email' => '请输入正确的邮箱地址',
    'email.unique' => '该邮箱已经被注册',
    'password.required' => '密码不能为空',
    'password.max' => '密码长度不能超过:max个字符',
  ];
}

public function register(Request $request)
{
  $validator = Validator::make($request->all(), $this->rules(), $this->messages());

  if ($validator->fails()) {
    return redirect('register')
      ->withErrors($validator)
      ->withInput();
  }

  // 验证通过,执行代码
}
Copier après la connexion

Cet article utilise le code ci-dessus comme exemple pour donner une introduction de base à Laravel Validation. J'espère que cet article pourra aider tout le monde.

Matériel de référence :

"Laravel Framework"

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!

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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment obtenir le code de retour lorsque l'envoi par e-mail échoue à Laravel? Comment obtenir le code de retour lorsque l'envoi par e-mail échoue à Laravel? Apr 01, 2025 pm 02:45 PM

Méthode pour obtenir le code de retour lorsque l'envoi par e-mail de Laravel échoue. Lorsque vous utilisez Laravel pour développer des applications, vous rencontrez souvent des situations où vous devez envoyer des codes de vérification. Et en réalité ...

La tâche de calendrier Laravel n'est pas exécutée: que dois-je faire si la tâche n'est pas en cours d'exécution après le calendrier: Exécuter la commande? La tâche de calendrier Laravel n'est pas exécutée: que dois-je faire si la tâche n'est pas en cours d'exécution après le calendrier: Exécuter la commande? Mar 31, 2025 pm 11:24 PM

Laravel Schedule Tâche d'exécution de dépannage non réactif Lorsque vous utilisez la planification des tâches de calendrier de Laravel, de nombreux développeurs rencontreront ce problème: Schedule: Exécuter ...

Dans Laravel, comment gérer la situation où les codes de vérification ne sont pas envoyés par e-mail? Dans Laravel, comment gérer la situation où les codes de vérification ne sont pas envoyés par e-mail? Mar 31, 2025 pm 11:48 PM

La méthode de traitement de l'échec de l'e-mail de Laravel à envoyer le code de vérification est d'utiliser Laravel ...

Comment implémenter la fonction de table personnalisée de clic pour ajouter des données dans l'administrateur DCAT? Comment implémenter la fonction de table personnalisée de clic pour ajouter des données dans l'administrateur DCAT? Apr 01, 2025 am 07:09 AM

Comment implémenter la fonction du tableau de Cliquez sur personnalisé pour ajouter des données dans DCATADMIN (Laravel-Admin) lors de l'utilisation de DCAT ...

Laravel - Serveur de vidage Laravel - Serveur de vidage Aug 27, 2024 am 10:51 AM

Laravel - Dump Server - Le serveur de dump Laravel est livré avec la version de Laravel 5.7. Les versions précédentes n'incluent aucun serveur de dump. Le serveur de vidage sera une dépendance de développement dans le fichier laravel/laravel composer.

Partage de connexion Laravel Redis: pourquoi la méthode de sélection affecte-t-elle d'autres connexions? Partage de connexion Laravel Redis: pourquoi la méthode de sélection affecte-t-elle d'autres connexions? Apr 01, 2025 am 07:45 AM

L'impact du partage des connexions redis dans Laravel Framework et sélectionnez Méthodes Lors de l'utilisation de Laravel Framework et Redis, les développeurs peuvent rencontrer un problème: grâce à la configuration ...

Laravel Multi-Lenant Extension Stancl / Tenancy: Comment personnaliser l'adresse hôte d'une connexion de base de données de locataire? Laravel Multi-Lenant Extension Stancl / Tenancy: Comment personnaliser l'adresse hôte d'une connexion de base de données de locataire? Apr 01, 2025 am 09:09 AM

Connexion de la base de données des locataires personnalisés dans le package d'extension multi-locataire Laravel Stancl / location Lors de la construction d'applications multi-locataires à l'aide du package d'extension multi-locataire Laravel Stancl / location, ...

Laravel – URL de l'action Laravel – URL de l'action Aug 27, 2024 am 10:51 AM

Laravel - URL d'action - Laravel 5.7 introduit une nouvelle fonctionnalité appelée « URL d'action appelable ». Cette fonctionnalité est similaire à celle de Laravel 5.6 qui accepte la méthode string in action. L'objectif principal de la nouvelle syntaxe introduite par Laravel 5.7 est de diriger

See all articles