thinkphp5.1版本-驗證碼生成和校驗
- 2019 年 12 月 27 日
- 筆記
thinkphp5.1版本開始將驗證碼歸類為擴展庫,而不是3.2版本的雜項,如下圖。同時也不在項目安裝中提供驗證碼擴展類,需要在使用時通過composer方式進行安裝。下面說一下安裝方式。

一、前提
(1)確保服務器上項目目錄已經安裝thinkphp5.1框架文件
(2)電腦上已經安裝composer,composer安裝:composer系列之介紹及安裝
二、在項目目錄,含有composer.json層級下右鍵->在此處打開命令窗口;

三、在windows命令行窗口模式下輸入以下命令,並回車,等待安裝更新完成;
composer require topthink/think-captcha
此處注意,如果沒有設置composer鏡像,請先設置國內鏡像,輸入以下命令,並回車;
composer config -g repo.packagist composer https://packagist.laravel-china.org
四、查看文件
進入vendor/topthink目錄下是否含有think-captcha文件夾;

五、驗證碼生成
在控制內引入擴展庫
use thinkcaptchaCaptcha;
/** * 驗證碼 * @return mixed */ public function docode() { $config = [ 'fontSize' => 30, 'length' => 3, 'useCurve' => false, 'useNoise' => false, 'codeSet' => '023456789' ]; $captcha = new Captcha($config); return $captcha->entry(); }
六、驗證碼渲染
<img src="{:url('Login/code')}" alt="驗證碼" />
七、驗證碼校驗
$code = input('post.code'); if(!captcha_check($code)) { $this->error('驗證碼錯誤,101'); }