注:由于thinkphp5.1沒有自帶驗證碼,所以需要通過composer安裝think-captcha 擴展包才能實現(xiàn)驗證碼
一、安裝composer
https://www.jb51.net/article/178346.htm
二、通過composer安裝think-captcha 擴展包
打開命令窗口,進入vendor/topthink輸入指令即可,也可以安裝shift鍵再右擊鼠標打開命令窗口可以直接進入當前文件夾位置
composer require topthink/think-captcha
三、在控制器里寫驗證碼的方法,要在命名空間引入use think\captcha\Captcha;然后在網址中輸入該方法的路由地址就可以出來驗證碼
//驗證碼
public function verify()
{
$captcha = new Captcha();
return $captcha->entry();
}
四、驗證碼在模板中輸出
在視圖中加入以下代碼:
img src="{:url('user/verify')}" alt="captcha" />
src里填寫verify方法的路由地址
五、驗證輸入的驗證碼是否正確
1、可以用 Captcha 類的 check 方法檢測驗證碼的輸入是否正確
// 檢測輸入的驗證碼是否正確,$value為用戶輸入的驗證碼字符串
$captcha = new Captcha();
if( !$captcha->check($value))
{
// 驗證失敗
}
2、或者直接調用封裝的一個驗證碼檢測的函數(shù) captcha_check
/ 檢測輸入的驗證碼是否正確,$value為用戶輸入的驗證碼字符串
if( !captcha_check($value ))
{
// 驗證失敗
}
六、自定義驗證碼的參數(shù)
//驗證碼
public function verify()
{
$config = [
// 驗證碼字體大小
'fontSize' => 30,
// 驗證碼位數(shù)
'length' => 4,
// 關閉驗證碼雜點
'useNoise' => true,
// 驗證碼圖片高度
'imageH' => 60,
// 驗證碼圖片寬度
'imageW' => 200,
// 驗證碼過期時間(s)
'expire' => 1800,
];
$captcha = new Captcha($config);
return $captcha->entry();
}
在vendor\topthink\think-captcha\src目錄下的Captcha.php中也可以配置
七、以下是我測試登錄的代碼部分截圖
控制器里的verify()方法
控制器里的驗證登錄的loginCheck()方法
視圖層里的驗證碼顯示
![](/d/20211017/18fce65a0250f44b67fc120dba1798e5.gif)
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:- ThinkPHP5.1驗證碼功能實現(xiàn)的示例代碼
- ThinkPHP5&5.1實現(xiàn)驗證碼的生成、使用及點擊刷新功能示例
- tp5(thinkPHP5框架)captcha驗證碼配置及驗證操作示例
- thinkPHP5.0框架驗證碼調用及點擊圖片刷新簡單實現(xiàn)方法
- thinkPHP框架實現(xiàn)的短信接口驗證碼功能示例
- thinkPHP實現(xiàn)的驗證碼登錄功能示例
- 詳解ThinkPHP3.2.3驗證碼顯示、刷新、校驗
- thinkPHP中驗證碼的簡單實現(xiàn)方法
- thinkphp自帶驗證碼全面解析
- Thinkphp極驗滑動驗證碼實現(xiàn)步驟解析