首頁 php框架 ThinkPHP 怎樣在ThinkPHP6中進行captcha圖形驗證碼操作?

怎樣在ThinkPHP6中進行captcha圖形驗證碼操作?

Jun 12, 2023 am 11:45 AM
thinkphp 操作 captcha

隨著網路的快速發展,基於圖形的驗證碼已經成為了網站安全保障的重要環節。驗證碼可以有效地防止機器人或惡意程式對網站進行自動化操作,同時也能保障使用者資訊的安全性。而在基於ThinkPHP6的網站開發中,如何實現captcha圖形驗證碼的操作呢?本文將為您介紹具體的操作流程。

一、產生Captcha圖形驗證碼

1、使用captcha庫進行安裝

在ThinkPHP6中進行captcha圖形驗證碼操作,我們首先需要使用captcha函式庫。可以透過composer進行安裝,在專案根目錄的composer.json檔案中加入:

"require": {
    "topthink/think-captcha": "^3.1"
}
登入後複製

然後透過命令列工具執行:

composer update
登入後複製

即可完成captcha庫的安裝。

2、產生驗證碼資料

在需要產生驗證碼時,我們可以建立一個新的控制器來呼叫captcha函式庫的相關方法。首先,我們需要在控制器中引入captcha庫:

use thinkcaptchaacadeCaptcha;
登入後複製

然後呼叫Captcha::create()方法即可產生驗證碼圖片,程式碼範例如下:

public function create()
{
    return Captcha::create();
}
登入後複製

這時候存取相應的URL,就可以看到產生的驗證碼圖片。

3、自訂驗證碼參數

我們也可以透過參數自訂驗證碼的一些設置,例如驗證碼長度、驗證碼圖片寬度、驗證碼圖片高度等等。範例如下:

public function create()
{
    return Captcha::create('abcde', 3, 120, 36);
}
登入後複製

上述程式碼中,'abcde'表示驗證碼可選字元集,3表示驗證碼長度,120和36分別為驗證碼圖片寬度和高度。這樣設定完畢後,再次造訪對應URL,就可以看到自訂設定產生的驗證碼圖片。

二、驗證Captcha圖形驗證碼

產生驗證碼後,我們還需要對使用者輸入的驗證碼進行驗證,以確保輸入正確。同樣,我們可以使用captcha庫提供的方法進行驗證。在控制器中,呼叫Captcha::check()方法即可對輸入的驗證碼進行驗證。範例如下:

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

其中,$code表示使用者輸入的驗證碼。如果驗證碼輸入正確,則傳回“驗證成功”,否則傳回“驗證失敗”。

要注意的是,在進行驗證碼驗證時,需要和使用者輸入的驗證碼進行大小寫比較,否則驗證也是會失敗的。我們可以在設定檔中設定大小寫敏感的選項,例如:

'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, // 验证码大小写敏感
],
登入後複製

其中,'checkSensitive' => true表示驗證碼大小寫敏感。

以上就是在ThinkPHP6中進行captcha圖形驗證碼操作的方法,適用於各種網站開發場景。希望能夠對您有幫助。

以上是怎樣在ThinkPHP6中進行captcha圖形驗證碼操作?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

thinkphp專案怎麼運行 thinkphp專案怎麼運行 Apr 09, 2024 pm 05:33 PM

執行 ThinkPHP 專案需要:安裝 Composer;使用 Composer 建立專案;進入專案目錄,執行 php bin/console serve;造訪 http://localhost:8000 查看歡迎頁面。

PyCharm使用教學:詳細指引你執行操作 PyCharm使用教學:詳細指引你執行操作 Feb 26, 2024 pm 05:51 PM

PyCharm是一款非常受歡迎的Python整合開發環境(IDE),它提供了豐富的功能和工具,使得Python開發變得更有效率和便利。本文將為大家介紹PyCharm的基本操作方法,並提供具體的程式碼範例,幫助讀者快速入門並熟練操作工具。 1.下載安裝PyCharm首先,我們需要前往PyCharm官網(https://www.jetbrains.com/pyc

thinkphp有幾個版本 thinkphp有幾個版本 Apr 09, 2024 pm 06:09 PM

ThinkPHP 擁有多個版本,針對不同 PHP 版本而設計。主要版本包括 3.2、5.0、5.1 和 6.0,而次要版本用於修復 bug 和提供新功能。目前最新穩定版本為 ThinkPHP 6.0.16。在選擇版本時,需考慮 PHP 版本、功能需求和社群支援。建議使用最新穩定版本以獲得最佳性能和支援。

什麼是 sudo,為什麼它如此重要? 什麼是 sudo,為什麼它如此重要? Feb 21, 2024 pm 07:01 PM

sudo(超級使用者執行)是Linux和Unix系統中的關鍵指令,允許一般使用者以root權限執行特定指令。 sudo的功能主要體現在以下幾個方面:提供權限控制:sudo透過授權使用者以臨時方式取得超級使用者權限,從而實現了對系統資源和敏感操作的嚴格控制。普通用戶只能在需要時透過sudo獲得臨時的特權,而不需要一直以超級用戶登入。提升安全性:透過使用sudo,可以避免在常規操作中使用root帳號。使用root帳戶進行所有操作可能會導致意外的系統損壞,因為任何錯誤或不小心的操作都將具有完全的權限。而

thinkphp怎麼運行 thinkphp怎麼運行 Apr 09, 2024 pm 05:39 PM

ThinkPHP Framework 的本機運作步驟:下載並解壓縮 ThinkPHP Framework 到本機目錄。建立虛擬主機(可選),指向 ThinkPHP 根目錄。配置資料庫連線參數。啟動 Web 伺服器。初始化 ThinkPHP 應用程式。存取 ThinkPHP 應用程式 URL 運行。

Linux Deploy的操作步驟及注意事項 Linux Deploy的操作步驟及注意事項 Mar 14, 2024 pm 03:03 PM

LinuxDeploy的操作步驟及注意事項LinuxDeploy是一款強大的工具,可協助使用者在Android裝置上快速部署各種Linux發行版,讓使用者在行動裝置上體驗完整的Linux系統。本文將詳細介紹LinuxDeploy的操作步驟以及注意事項,同時提供具體的程式碼範例,幫助讀者更好地使用此工具。操作步驟:安裝LinuxDeploy:首先在

win10開機密碼忘記按F2怎麼操作 win10開機密碼忘記按F2怎麼操作 Feb 28, 2024 am 08:31 AM

想必很多的用戶家裡都有那麼幾台不用的電腦,因為長時間不用完全忘了開機密碼,於是想知道一下,忘記密碼要怎麼操作呢?那就一起來看看吧。 win10開機密碼忘記按F2怎麼操作1、按下電腦的電源鍵,然後開機時按下F2(不同電腦品牌進入bios的按鍵也不同)。 2.在bios介面中,找到security選項(不同品牌電腦的位置可能有所不同)。一般都在頂部的設定選單中。 3.然後找到SupervisorPassword選項並且點選。 4.這時候用戶就可以看到自己的密碼了,同時找到旁邊的Enabled切換為Dis

laravel和thinkphp哪個好 laravel和thinkphp哪個好 Apr 09, 2024 pm 03:18 PM

Laravel 和 ThinkPHP 框架的效能比較:ThinkPHP 效能通常優於 Laravel,專注於最佳化和快取。 Laravel 性能良好,但對於複雜應用程序,ThinkPHP 可能更適合。

See all articles