验证码扩展 Barrett-captcha

码农软件 · 软件分类 · 验证码(Captcha) · 2019-04-22 08:44:46

软件介绍

Barrett-captcha
验证码扩展库

使用

一、安装

composer require barrett/captcha

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

> 配置表如下

参数名参数类型默认值说明
keystringBarrett验证码加密key
destroyBooleanBoolean验证成功后是否销毁
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.当用户提交数据时则根据唯一场景标识来检测对应场景的验证码是否正确,而不会出现相同页面多次调用后不能效验的问题。

本文地址:https://codercto.com/soft/d/4119.html

算法概论

算法概论

Sanjoy Dasgupta、Christos Papadimitriou、Umesh Vazirani / 王沛、唐扬斌、刘齐军 / 清华大学出版社 / 2008-7 / 39.99元

《国外经典教材·算法概论》涵盖了绝大多数算法设计中的常用技术。在表达每一种技术时,阐述它的应用背景,强调每个算法运转背后的简洁数学思想,注意运用与其他技术类比的方法来说明它的特征,并提供了大量相应实际问题的例子。《国外经典教材·算法概论》同时也注重了对每一种算法的复杂性分析。全书共10章,从基本的数字算法人手,先后介绍了分治、图的遍历、贪心算法、动态规划、线性规划等技术,对NP完全问题进行厂基本而......一起来看看 《算法概论》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

MD5 加密
MD5 加密

MD5 加密工具

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具