Barrett-captcha 验证码扩展开源项目

我要开发同款
匿名用户2017年10月11日
128阅读
开发技术PHP
所属分类Web应用开发、验证码(Captcha)
授权协议Apache

作品详情

Barrett-captcha验证码扩展库

使用

一、安装

composer require barrett/captcha

 二、初始化配置引入本扩展库后,在实例化时可以传递配置参数,用于处理不同的场景。$Captcha=newbarrett\Captcha(['setZh'=>true,'length'=>4]);

>配置表如下

参数名参数类型默认值说明keystringBarrett验证码加密keydestroyBooleanBoolean验证成功后是否销毁expireinteger1800验证码过期时间(s)lengthinteger5验证码长度setZhBooleanfalse使用中文验证码widthinteger180图片验证码默认宽度heightinteger50图片验证码默认高度fontSizeinteger20验证码字体大小(px)fontTtfstring 验证码字体,不设置随机获取useImgBgBooleanfalse验证码字体,不设置随机获取useCurveBooleantrue是否画混淆曲线useNoiseBooleantrue是否添加杂点bgarray[243,251,254]背景颜色

 二、创建验证码本扩展目前支持:图形验证码、数字验证码(短信用)两种,使用方法如下:>创建图形验证码

$Captcha = new barrett\Captcha();return $Captcha->createImg('user');

>创建短信验证码

$Captcha = new barrett\Captcha();//createNum方法会返回被创建的验证码$code = $Captcha->createNum('user');//使用短信发送数字验证码$Sms->sendToPhone($code['data]);

>验证码效验

$Captcha = new barrett\Captcha();return $Captcha->check($_POST,'user');

如输出结果异常请检查页面头部信息是否正常!如:Content-type:image/png是否设置

 三、场景标识用例:客户更改已绑定的手机号,需要在同一个页面生成两个验证码(原手机验证码、新手机验证码)。1.原手机创建验证码加入唯一场景标识:

$old = $Captcha->createNum('old');

2.新手机创建验证码同样加入唯一场景标识:

$new = $Captcha->createNum('new');

3.当用户提交数据时则根据唯一场景标识来检测对应场景的验证码是否正确,而不会出现相同页面多次调用后不能效验的问题。

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论