Maison >cadre php >PensezPHP >Démarrez avec le middleware ThinkPHP6 avec un exemple simple

Démarrez avec le middleware ThinkPHP6 avec un exemple simple

王雪芹
王雪芹original
2020-05-06 15:47:452325parcourir

À partir de ThinkPHP6, un terme appelé « middleware » apparaît dans le manuel officiel. Alors à quoi sert le middleware ? Comment doit-il être utilisé ? Analysons-le lentement ci-dessous.

Tout d'abord, jetons un coup d'œil à la définition du site officiel du middleware :

Le middleware est principalement utilisé pour intercepter ou filtrer les requêtes HTTP des applications et effectuer les traitements métier nécessaires.

Ce n'est pas difficile à comprendre au sens littéral. Le middleware peut intercepter ou faire d'autres choses avant que nous demandions la méthode du contrôleur.

Nous écrivons une ligne de code dans la méthode d'index dans le contrôle d'index de www.blog.com :

echo "index方法";

Testons ce qui se passera si le middleware est défini ?

1. Définition du middleware

Après avoir téléchargé le framework ThinkPHP6, il y a middleware.php sous l'application. Ce fichier est la définition du middleware. fichier, nous faisons attention à son emplacement. Il n’est placé sous aucune application, mais dans le même répertoire que BaseController.php sous app, c’est donc un middleware global.

Définir le middleware est très simple. Nous avons deux méthodes :

1. Utilisez la ligne de commande. php pense make:middleware Vérifiez. Mon sentiment après l’avoir utilisé n’est qu’un seul mot : rapide ! Si vite ! La définition du middleware est terminée instantanément.

2. Copiez et collez, on crée le répertoire middleware sous l'application, et créons un middleware Check.php :

<?php
namespace app\middleware;
class Check
{
    public function handle($request, \Closure $next)
    {
        echo "app中间件";
        return $next($request);
    }
}

Le middleware est défini, pourquoi il ne prend pas effet ?

Suivez les étapes de définition du middleware ci-dessus, la définition du middleware est terminée, mais elle ne prend pas effet. Quelle est la raison ?

La raison est qu'il n'est pas démarré dans le fichier de configuration. Comment faire ?

Ouvrez appmiddleware.php et ajoutez le code suivant à la page minimale :

app\middleware\Check::class

Lorsque nous visiterons à nouveau www.blog.com, nous constaterons que le contenu du middleware est sortie en premier, puis le contrôle est entré dans le contenu de l'appareil.

Démarrez avec le middleware ThinkPHP6 avec un exemple simple

Cela est également conforme à la définition officielle du middleware, qui consiste à exécuter le middleware correspondant avant d'exécuter la méthode. Ce qui précède est un petit exemple pour démarrer avec le middleware. Après avoir compris ce petit exemple, cela ouvrira la porte à d’autres contenus middleware.

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:
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
Article précédent:téléchargement de fichier tpArticle suivant:téléchargement de fichier tp