Maison développement back-end tutoriel php Middleware CodeIgniter : simplification de la validation des formulaires et du filtrage des données

Middleware CodeIgniter : simplification de la validation des formulaires et du filtrage des données

Jul 29, 2023 pm 04:42 PM
中间件 表单验证 数据过滤

CodeIgniter Middleware : simplifiez la validation des formulaires et le filtrage des données

Lors du développement d'applications Web, la validation des formulaires et le filtrage des données sont des étapes essentielles. En tant que framework PHP populaire, CodeIgniter fournit un ensemble d'outils de validation flexibles qui permettent aux développeurs de gérer facilement les tâches de validation de formulaire et de filtrage de données. En utilisant un middleware, nous pouvons simplifier et optimiser davantage ces tâches.

Le middleware est une fonctionnalité puissante du framework CodeIgniter, qui peut exécuter certains codes avant ou après la méthode du contrôleur. Cela nous permet de gérer les tâches courantes dans le middleware sans avoir à répéter la validation et le filtrage dans chaque méthode de contrôleur.

Ci-dessous, nous présenterons comment utiliser le middleware pour simplifier la validation des formulaires et le filtrage des données.

Tout d’abord, nous devons créer une classe middleware personnalisée. Dans CodeIgniter, les classes middleware peuvent être placées dans le répertoire application/Middleware. Nous créons un fichier nommé FormValidationMiddleware.php et écrivons le code suivant :

<?php
// application/Middleware/FormValidationMiddleware.php

namespace AppMiddleware;

use CodeIgniterExceptionsPageNotFoundException;
use ConfigServices;

class FormValidationMiddleware
{
    public function before(RequestInterface $request, $arguments = null)
    {
        $config = config('Validation');

        $validation = Services::validation($config);

        if (!$validation->run($request->getPost())) {
            throw PageNotFoundException::forInvalidRequest();
        }

        // 可以在这里进行数据过滤

        return $request;
    }

    public function after(RequestInterface $request, ResponseInterface $response, $arguments = null)
    {
        return $response;
    }
}
Copier après la connexion

Dans le code ci-dessus, nous utilisons la classe Validation de CodeIgniter pour la validation du formulaire. Tout d’abord, nous avons chargé le fichier de configuration Validation et créé une instance de vérification basée sur le fichier de configuration. Nous utilisons ensuite l'instance de validation pour valider les données de la requête POST. Si la vérification échoue, nous pouvons choisir de lancer une PageNotFoundException, indiquant que la demande n'est pas valide. Si la vérification réussit, nous pouvons ajouter du code de filtrage des données dans la méthode before.

Ensuite, nous devons enregistrer la classe middleware dans le fichier config/Events.php. Recherchez le code suivant :

$events->on('pre_system', function () {
    // Code...
});
Copier après la connexion

Dans ce bloc de code, nous pouvons commencer à enregistrer la classe middleware. Le code est le suivant :

$events->on('pre_system', function () {
    // 注册表单验证中间件
    $middlewares = [
        AppMiddlewareFormValidationMiddleware::class,
    ];

    Services::middlewares()
        ->attach($middlewares)
        ->setPriority(0)
        ->setAsGlobal();
});
Copier après la connexion

Dans le code ci-dessus, nous avons créé un tableau $middlewares et ajouté la classe middleware FormValidationMiddleware au tableau. Ensuite, nous utilisons la classe Services de CodeIgniter pour enregistrer le middleware. Nous définissons la priorité du middleware sur 0, ce qui signifie que ce middleware s'exécutera avant tous les autres middlewares. Enfin, utilisez la méthode setAsGlobal() pour rendre le middleware global afin qu'il prenne effet dans les requêtes dans toute l'application.

Maintenant, nous avons créé avec succès une classe middleware et l'avons enregistrée. Ci-dessous, nous montrerons comment utiliser le middleware dans le contrôleur pour la validation des formulaires et le filtrage des données.

Supposons que nous ayons un contrôleur appelé UserController, qui possède une méthode appelée register() qui gère la soumission du formulaire pour l'enregistrement de l'utilisateur. Nous avons ajouté l'annotation middleware @middleware sur la méthode pour référencer le middleware que nous venons de créer :

<?php
// application/Controllers/UserController.php

namespace AppControllers;

use CodeIgniterController;
use CodeIgniterValidationRules;

class UserController extends Controller
{
    /**
     * @middleware(AppMiddlewareFormValidationMiddleware)
     */
    public function register()
    {
        // 其他处理逻辑...

        // 如果代码执行到这里,说明表单验证和数据过滤已经完成
    }
}
Copier après la connexion

Comme indiqué ci-dessus, en ajoutant l'annotation @middleware sur la méthode et en spécifiant l'espace de noms complet de la classe middleware, nous pouvons appliquer le middleware à méthodes spécifiques.

Dans l'exemple ci-dessus, nous avons utilisé uniquement la fonction de validation de formulaire, mais selon vos propres besoins, vous pouvez ajouter une autre logique de filtrage de données requise dans la méthode before du middleware.

L'utilisation d'un middleware pour la validation des formulaires et le filtrage des données peut grandement simplifier les tâches de développement. Cela nous aide à réduire le code en double dans chaque méthode de contrôleur, rendant le code plus rationalisé et plus lisible. Dans le même temps, le middleware fournit également une manière découplée de gérer les demandes, rendant nos applications plus modulaires et plus faciles à maintenir.

J'espère que cet article pourra vous aider à mieux comprendre et utiliser le middleware CodeIgniter pour simplifier les tâches de validation de formulaire et de filtrage des données.

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

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

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)

Quel est le principe du middleware Tomcat Quel est le principe du middleware Tomcat Dec 27, 2023 pm 04:40 PM

Le principe du middleware Tomcat est implémenté sur la base des spécifications Java Servlet et Java EE. En tant que conteneur de servlets, Tomcat est responsable du traitement des requêtes et des réponses HTTP et de la fourniture de l'environnement d'exécution des applications Web. Les principes du middleware Tomcat concernent principalement : 1. Le modèle de conteneur ; 2. L'architecture des composants ; 3. Le mécanisme de traitement des servlets ; 4. L'écoute des événements et les filtres ; 6. La sécurité. technologie 9. Mode intégré, etc.

Comment utiliser un middleware pour l'accélération des données dans Laravel Comment utiliser un middleware pour l'accélération des données dans Laravel Nov 02, 2023 am 09:40 AM

Comment utiliser le middleware pour l'accélération des données dans Laravel Introduction : Lors du développement d'applications Web à l'aide du framework Laravel, l'accélération des données est la clé pour améliorer les performances des applications. Le middleware est une fonctionnalité importante fournie par Laravel qui gère les requêtes avant qu'elles n'atteignent le contrôleur ou avant que la réponse ne soit renvoyée. Cet article se concentrera sur la façon d'utiliser le middleware pour obtenir une accélération des données dans Laravel et fournira des exemples de code spécifiques. 1. Qu'est-ce qu'un middleware ? Le middleware est un mécanisme dans le framework Laravel.

Comment utiliser le middleware pour la transformation des réponses dans Laravel Comment utiliser le middleware pour la transformation des réponses dans Laravel Nov 03, 2023 am 09:57 AM

Comment utiliser le middleware pour la conversion des réponses dans Laravel Middleware est l'une des fonctionnalités très puissantes et pratiques du framework Laravel. Il nous permet de traiter les demandes et les réponses avant que la demande n'entre dans le contrôleur ou avant que la réponse ne soit envoyée au client. Dans cet article, je vais montrer comment utiliser le middleware pour la transformation des réponses dans Laravel. Avant de commencer, assurez-vous que Laravel est installé et qu'un nouveau projet est créé. Nous allons maintenant suivre ces étapes : Créer un nouveau middleware Ouvrir

Comment gérer la validation de formulaire à l'aide d'un middleware dans Laravel Comment gérer la validation de formulaire à l'aide d'un middleware dans Laravel Nov 02, 2023 pm 03:57 PM

Comment utiliser un middleware pour gérer la validation de formulaire dans Laravel, des exemples de code spécifiques sont requis Introduction : Dans Laravel, la validation de formulaire est une tâche très courante. Afin de garantir la validité et la sécurité des données saisies par les utilisateurs, nous vérifions généralement les données soumises dans le formulaire. Laravel fournit une fonction pratique de validation de formulaire et prend également en charge l'utilisation de middleware pour gérer la validation de formulaire. Cet article présentera en détail comment utiliser le middleware pour gérer la validation des formulaires dans Laravel et fournira des exemples de code spécifiques.

Résumé des questions fréquemment posées sur l'importation de données Excel dans MySQL : Comment gérer les données en double lors du processus d'importation ? Résumé des questions fréquemment posées sur l'importation de données Excel dans MySQL : Comment gérer les données en double lors du processus d'importation ? Sep 09, 2023 pm 04:22 PM

Résumé des questions fréquemment posées sur l'importation de données Excel dans MySQL : Comment gérer les données en double lors du processus d'importation ? Lors du traitement des données, nous rencontrons souvent le besoin d'importer des données Excel dans la base de données Mysql. Cependant, en raison de l’énorme quantité de données, il est facile de les dupliquer, ce qui nous oblige à les traiter en conséquence lors du processus d’importation. Dans cet article, nous expliquons comment gérer les données en double lors de l'importation et fournissons des exemples de code correspondants. Avant d'effectuer un traitement répété des données, vous devez d'abord vous assurer qu'il existe des

Comment utiliser un middleware pour la planification de tâches planifiées dans Laravel Comment utiliser un middleware pour la planification de tâches planifiées dans Laravel Nov 02, 2023 pm 02:26 PM

Comment utiliser un middleware pour la planification de tâches planifiées dans Laravel Introduction : Laravel est un framework open source PHP populaire qui fournit des outils pratiques et puissants pour développer des applications Web. L'une des fonctionnalités importantes concerne les tâches planifiées, qui permettent aux développeurs d'exécuter des tâches spécifiques à des intervalles spécifiés. Dans cet article, nous présenterons comment utiliser le middleware pour implémenter la planification des tâches planifiées de Laravel et fournirons des exemples de code spécifiques. Préparation de l'environnement Avant de commencer, nous devons nous assurer

Comment filtrer et rechercher des données dans React Query ? Comment filtrer et rechercher des données dans React Query ? Sep 27, 2023 pm 05:05 PM

Comment filtrer et rechercher des données dans ReactQuery ? Lors de l'utilisation de ReactQuery pour la gestion des données, nous rencontrons souvent le besoin de filtrer et de rechercher des données. Ces fonctionnalités peuvent nous aider à trouver et à afficher plus facilement des données dans des conditions spécifiques. Cet article expliquera comment utiliser les fonctions de filtrage et de recherche dans ReactQuery et fournira des exemples de code spécifiques. ReactQuery est un outil pour interroger des données dans les applications React

Comment utiliser un middleware pour la récupération de données dans Laravel Comment utiliser un middleware pour la récupération de données dans Laravel Nov 02, 2023 pm 02:12 PM

Laravel est un framework d'application Web PHP populaire qui offre de nombreux moyens rapides et simples de créer des applications Web efficaces, sécurisées et évolutives. Lors du développement d'applications Laravel, nous devons souvent considérer la question de la récupération des données, c'est-à-dire comment récupérer les données et assurer le fonctionnement normal de l'application en cas de perte ou de dommage de données. Dans cet article, nous présenterons comment utiliser le middleware Laravel pour implémenter des fonctions de récupération de données et fournirons des exemples de code spécifiques. 1. Qu'est-ce que Lara ?

See all articles