php--------ThinkPHP3.2验证码使用

Thinkphp框架验证码的路径目录:ThinkPHP -> Library -> Think -> Verify.class.php ,只要在控制器中实例化这个类就能实现验证码的功能了。

效果图:

php--------ThinkPHP3.2验证码使用

简单代码:

    $Verify = new ThinkVerify();
$Verify->entry();

验证码类会把生成的验证码写入session中,通过session('verify_code')获取值,进行比对就能进行验证码的作用了。

验证码支持的参数:

可以对生成的验证码设置相关的参数,以达到不同的显示效果。 这些参数包括:

参数 描述
expire 验证码的有效期(秒)
useImgBg 是否使用背景图片  默认为false
fontSize 验证码字体大小(像素)   默认为25
useCurve 是否使用混淆曲线 默认为true
useNoise 是否添加杂点  默认为true
imageW 验证码宽度 设置为0为自动计算
imageH 验证码高度 设置为0为自动计算
length 验证码位数
fontttf 指定验证码字体 默认为随机获取
useZh 是否使用中文验证码
bg 验证码背景颜色 rgb数组设置,例如 array(243, 251, 254)
seKey 验证码的加密密钥
codeSet 验证码字符集合    3.2.1 新增
zhSet 验证码字符集合(中文)  3.2.1 新增

把参数放入实例化后的对象中对应的变量中就能改变验证码的一些效果了。

生成验证码

/这段代码需要写在一个单独的控制器中的方法,方便调用
$Verify = new ThinkVerify();
//对指定的变量参数赋值,调整验证码效果
$Verify->fontSize = 30;
$Verify->length = 3;
$Verify->useNoise = false;
//图片输出
$Verify->entry();

调用验证码

    <!--这里的图片路径就是tp框架中的控制器方法路径-->
<!--点击图片获取图片路径并拼接新的参数,切换图片-->
<img onclick="this.src=this.src+'&'+Math.random()" style="cursor: pointer;"
src="index.php?m=home&c=login&a=checkcode"/>

验证验证码

    //可以把这个写在框架公共函数库function.php中,并传入参数比较,$code为用户的输入验证码
function check_verify($code, $id = ''){
$verify = new \Think\Verify();
return $verify->check($code, $id);
}

官方文档地址:http://document.thinkphp.cn/manual_3_2.html#verify

上一篇:使用批处理根据项目工程文件生成Nuget包并发布(支持.NET Core)


下一篇:c#winform简单实现Mysql数据库的增删改查的语句