阿里云

thinkphp5.1版本-验证码生成和校验

thinkphp5.1版本开始将验证码归类为扩展库,而不是3.2版本的杂项,如下图。同时也不在项目安装中提供验证码扩展类,需要在使用时通过composer方式进行安装。下面说一下安装方式。

image.png

一、前提

(1)确保服务器上项目目录已经安装thinkphp5.1框架文件

(2)电脑上已经安装composer,composer安装:composer系列之介绍及安装


二、在项目目录,含有composer.json层级下右键->在此处打开命令窗口;

image.png


三、在windows命令行窗口模式下输入以下命令,并回车,等待安装更新完成;

composer require topthink/think-captcha


此处注意,如果没有设置composer镜像,请先设置国内镜像,输入以下命令,并回车;

composer config -g repo.packagist composer https://packagist.laravel-china.org


四、查看文件

进入vendor/topthink目录下是否含有think-captcha文件夹;

image.png


五、验证码生成

在控制内引入扩展库

use think\captcha\Captcha;


/**
 * 验证码
 * @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');
}


喜欢就点个赞吧

发表评论

需要先登录,才能发表评论哦!登录

网友评论
暂无评论