Maison  >  Article  >  cadre php  >  Comment effectuer une opération de code de vérification graphique captcha dans ThinkPHP6 ?

Comment effectuer une opération de code de vérification graphique captcha dans ThinkPHP6 ?

WBOY
WBOYoriginal
2023-06-12 11:45:102740parcourir

Avec le développement rapide d'Internet, les codes de vérification graphiques sont devenus un élément important de la sécurité des sites Web. Les codes de vérification peuvent empêcher efficacement les robots ou les programmes malveillants d'automatiser les opérations sur le site Web et peuvent également garantir la sécurité des informations des utilisateurs. Dans le développement de sites Web basés sur ThinkPHP6, comment implémenter le fonctionnement du code de vérification graphique captcha ? Cet article vous présentera le processus de fonctionnement spécifique.

1. Générer le code de vérification graphique Captcha

1. Installer à l'aide de la bibliothèque captcha

Pour effectuer l'opération de code de vérification graphique captcha dans ThinkPHP6, nous devons d'abord utiliser la bibliothèque captcha. Il peut être installé via composer. Ajoutez :

"require": {
    "topthink/think-captcha": "^3.1"
}

au fichier composer.json dans le répertoire racine du projet, puis exécutez :

composer update

via l'outil de ligne de commande pour terminer l'installation de la bibliothèque captcha.

2. Générer des données de code de vérification

Lorsque nous devons générer un code de vérification, nous pouvons créer un nouveau contrôleur pour appeler les méthodes pertinentes de la bibliothèque captcha. Tout d'abord, nous devons introduire la bibliothèque captcha dans le contrôleur :

use thinkcaptchaacadeCaptcha;

Appelez ensuite la méthode Captcha::create() pour générer l'image du code de vérification. L'exemple de code est le suivant :

public function create()
{
    return Captcha::create();
}

À ce stade, visitez le correspondant. URL et vous pouvez voir l’image du code de vérification généré.

3. Personnaliser les paramètres du code de vérification

Nous pouvons également personnaliser certains paramètres du code de vérification via des paramètres, tels que la longueur du code de vérification, la largeur de l'image du code de vérification, la hauteur de l'image du code de vérification, etc. Un exemple est le suivant :

public function create()
{
    return Captcha::create('abcde', 3, 120, 36);
}

Dans le code ci-dessus, "abcde" représente le jeu de caractères facultatif du code de vérification, 3 représente la longueur du code de vérification, 120 et 36 sont respectivement la largeur et la hauteur de l'image du code de vérification. . Après avoir terminé les paramètres, visitez à nouveau l'URL correspondante et vous verrez l'image du code de vérification générée par les paramètres personnalisés.

2. Vérifiez le code de vérification graphique Captcha

Après avoir généré le code de vérification, nous devons également vérifier le code de vérification saisi par l'utilisateur pour nous assurer que la saisie est correcte. De même, nous pouvons utiliser la méthode fournie par la bibliothèque captcha pour la vérification. Dans le contrôleur, appelez la méthode Captcha::check() pour vérifier le code de vérification saisi. Un exemple est le suivant :

public function check($code)
{
    if (Captcha::check($code)) {
        return '验证成功';
    } else {
        return '验证失败';
    }
}

Parmi eux, $code représente le code de vérification saisi par l'utilisateur. Si le code de vérification est saisi correctement, « Vérification réussie » sera renvoyé, sinon « Échec de la vérification » sera renvoyé.

Il convient de noter que lors de la vérification du code de vérification, vous devez comparer le cas avec le code de vérification saisi par l'utilisateur, sinon la vérification échouera. Nous pouvons définir des options sensibles à la casse dans le fichier de configuration, par exemple :

'captcha' => [
    'reset' => true,
    'useZh' => false,
    'codeSet' => '0123456789',
    'fontSize' => 25,
    'useCurve' => false,
    'useNoise' => false,
    'imageH' => 0,
    'imageW' => 0,
    'length' => 4,
    'bg' => [243, 251, 254],
    'fontttf' => '',
    'expire' => 1800,
    'defaultCode' => '',
    'seKey' => 'thinkphp_captcha',
    'offset' => null,
    'verifyCode' => true,
    'resetCode' => true,
    'keyPrefix' => '',
    'checkSensitive' => true, // 验证码大小写敏感
],

Parmi elles, 'checkSensitive' => true signifie que le code de vérification est sensible à la casse.

Ce qui précède est la méthode d'exécution du code de vérification graphique captcha dans ThinkPHP6, qui convient à divers scénarios de développement de sites Web. J'espère que ça aide.

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