thinkphp5 自定义验证码使用

本文介绍了在ThinkPHP5框架中如何自定义验证码,包括控制器中的操作、页面调用方式、点击刷新验证码的实现以及验证过程。通过实例详细讲解了整个流程。

控制器

public function verify(){
        $captcha = new \think\captcha\Captcha();
        //使用中文验证码
        $captcha->useZh = true;
        //验证码过期时间(s)
        $captcha->expire =1800;
        //是否画混淆曲线
        $captcha->useCurve =true;
        //是否添加杂点
        $captcha->useNoise = true;
        //验证码位数
        $captcha->length = 4;
        //验证成功后是否重置
        $captcha->reset = true;
        // 设置验证码字符
        $captcha->zhSet = '们以我到他会作时要动国产的一是工就年阶义发成部民可出能方进在了不和有大这';
        return $captcha->entry();
    }

页面调用

<img src="{:url('common/verify')}" alt="captcha" onclick="this.src='{:url('common/verify')}?seed='+Math.random()" height="42" id="captcha" />

点击刷新

onclick="this.src='{:url('common/verify')}?seed='+Math.random()"

验证

//使用TP5的内置验证功能,添加captcha验证规则即可

$this->validate($data,[
    'captcha|验证码'=>'require|captcha'
]);

//或者手动验证

if(!captcha_check($captcha)){
 //验证失败
};

//用Captcha类的check方法检测验证码的输入是否正确,例如,下面是封装的一个验证码检测的函数:

// 检测输入的验证码是否正确,$code为用户输入的验证码字符串,$id多个验证码标识
function check_verify($code, $id = ''){
    $captcha = new Captcha();
    return $captcha->check($code, $id);
}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值