ホームページ >PHPフレームワーク >ThinkPHP >ThinkPHP6 で確認コードを使用する方法

ThinkPHP6 で確認コードを使用する方法

王林
王林オリジナル
2023-06-21 10:05:261948ブラウズ

ネットワーク セキュリティの重要性が高まるにつれ、検証コードが一般的な検証方法として広く使用されています。 Web アプリケーションでは、検証コードにより悪意のある攻撃やロボットの自動操作を効果的に防止し、情報のセキュリティと信頼性を確保できます。 ThinkPHP6 は、優れた PHP フレームワークとして、検証コード機能のサポートも提供します。この記事では、ThinkPHP6 で確認コードを使用する方法を紹介します。

  1. 検証コード拡張機能のインストール
    ThinkPHP6 にはデフォルトでは検証コード拡張機能が含まれていないため、手動でインストールする必要があります。これは、composer を通じてインストールできます。コマンドは次のとおりです:

    composer require topthink/think-captcha
  2. 検証コードの構成
    ThinkPHP6 では、検証コードの構成は、captcha.php ファイルで行う必要があります。 configディレクトリ内にあります。このファイルはデフォルトでは存在しません。次の構成情報を手動で作成して追加する必要があります:

    <?php
    
    return [
     // 验证码位数
     'length'    => 4,
     // 验证码字符集合
     'codeSet'   => '2345678abcdefhijkmnpqrstuvwxyzABCDEFGHJKLMNPQRTUVWXY',
     // 验证码过期时间(s)
     'expire'    => 1800,
     // 验证码字体大小(px)
     'fontSize'  => 25,
     // 是否画混淆曲线
     'useCurve'  => true,
     // 是否添加杂点
     'useNoise'  => true,
     // 验证码图片高度
     'imageH'    => 60,
     // 验证码图片宽度
     'imageW'    => 220,
     // 验证码背景颜色(rgb数组,设置为null随机颜色)
     'bg'        => [243, 251, 254],
     // 验证码字体颜色(rgb数组,设置为null随机颜色)
     'fontColor' => null,
    ];

上記は、一般的に使用される検証コード構成項目の一部であり、以下に応じて変更できます。実際のニーズ。各設定項目の機能には、対応するコメントが付いています。

  1. 検証コードの生成
    検証コードを生成するときは、まず検証コード ツール クラスをインスタンス化する必要があります。コントローラーで次のコードを使用するだけです:

    use thinkcaptchaacadeCaptcha;
    
    class Demo extends Controller
    {
     // 生成验证码
     public function captcha()
     {
         return Captcha::create();
     }
    }

create() メソッドのパラメーターには、検証コードの文字数を示す数値を指定できます。また、次のコードを含む数値を指定することもできます。複数のオプションの配列については、具体的な手順については次のコードを参照してください。

$options = [
    'length'    => 4,
    'fontSize'  => 25,
    'imageW'    => 220,
    'imageH'    => 60,
    'useCurve'  => false,
    'useNoise'  => true,
    'reset'     => true,
    'fontttf'   => '',
    'bg'        => [243, 251, 254],
    'expire'    => 1800,
    'codeSet'   => '2345678abcdefhijkmnpqrstuvwxyzABCDEFGHJKLMNPQRTUVWXY',
    'zh'        => false,
    'math'      => false,
    'addChars'  => '',
    'fontColor' => null,
];
return Captcha::create($options);
  1. 検証検証コード
    ユーザーがフォームを送信するとき、検証コードを検証する必要があります。これは、次のコードによって実現できます:

    use thinkcaptchaacadeCaptcha;
    
    class Demo extends Controller
    {
     // 验证验证码
     public function checkCaptcha($captcha)
     {
         if (Captcha::check($captcha)) {
             // 验证码正确
             return true;
         } else {
             // 验证码错误
             return false;
         }
     }
    }

パラメータ $captcha は、ユーザーが入力した検証コード文字列です。Captcha::check($captcha) 関数は、それを自動的に比較します。検証コードがセッションに保存されているものと比較され、等しい場合は true が返され、そうでない場合は false が返されます。

これまでで、ThinkPHP6 での検証コードの使用が完了しました。拡張機能のインストール、検証コードの設定、検証コードの生成、検証コードの検証の4つのステップを通じて、検証コード機能を簡単に実装し、Webアプリケーションのセキュリティと信頼性を向上させることができます。

以上がThinkPHP6 で確認コードを使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。