thinkphp5.1版本开始将验证码归类为扩展库,而不是3.2版本的杂项,如下图。同时也不在项目安装中提供验证码扩展类,需要在使用时通过composer方式进行安装。下面说一下安装方式。
一、前提
(1)确保服务器上项目目录已经安装thinkphp5.1框架文件
(2)电脑上已经安装composer,composer安装:composer系列之介绍及安装
二、在项目目录,含有composer.json层级下右键->在此处打开命令窗口;
三、在windows命令行窗口模式下输入以下命令,并回车,等待安装更新完成;
代码语言:javascript复制composer require topthink/think-captcha
此处注意,如果没有设置composer镜像,请先设置国内镜像,输入以下命令,并回车;
代码语言:javascript复制composer config -g repo.packagist composer https://packagist.laravel-china.org
四、查看文件
进入vendor/topthink目录下是否含有think-captcha文件夹;
五、验证码生成
在控制内引入扩展库
代码语言:javascript复制use thinkcaptchaCaptcha;
代码语言:javascript复制/**
* 验证码
* @return mixed
*/
public function docode()
{
$config = [
'fontSize' => 30,
'length' => 3,
'useCurve' => false,
'useNoise' => false,
'codeSet' => '023456789'
];
$captcha = new Captcha($config);
return $captcha->entry();
}
六、验证码渲染
代码语言:javascript复制<img src="{:url('Login/code')}" alt="验证码" />
七、验证码校验
代码语言:javascript复制$code = input('post.code');
if(!captcha_check($code)) {
$this->error('验证码错误,101');
}