thinkphp5 里沒有內(nèi)置驗(yàn)證碼的類庫,因此官方給出了一個(gè)類庫,地址如下:https://github.com/top-think/think-captcha
具體的使用方法是:
安裝
composer require topthink/think-captcha
使用
模板里輸出
<div>{:captcha_img()}</div>
或者
<div>})</div>
以上兩種方法的最終效果是一樣的。
如果這樣使用的話,結(jié)果一定是失敗的,這還沒完呢?
配置
``config.php`
配置如下
'captcha' => [
// 驗(yàn)證碼字符集合
'codeSet' => '0123456789',
// 驗(yàn)證碼字體大小(px)
'fontSize' => 16,
// 是否畫混淆曲線
'useCurve' => false,
// 驗(yàn)證碼圖片高度
'imageH' => 30,
// 驗(yàn)證碼圖片寬度
'imageW' => 110,
// 驗(yàn)證碼位數(shù)
'length' => 4,
// 驗(yàn)證成功后是否重置
'reset' => true
]
同時(shí)還要確保
'url_route_on' => true,
控制器里驗(yàn)證
使用TP5的內(nèi)置驗(yàn)證功能即可
$this->validate($data,[
'captcha|驗(yàn)證碼'=>'require|captcha' //captacha是驗(yàn)證碼name名稱
]);
或者手動(dòng)驗(yàn)證
if(!captcha_check($captcha)){
//驗(yàn)證失敗
};
同時(shí)加上validate驗(yàn)證就更好了

Paste_Image.png