thinkphp验证码(总结之后,效率非常好)
一、总结
1、总结:总结之后,效率非常好,复习的时候也才方便,也能深入到细处,非常方便建立熟悉感和突破使用困境
2、验证码使用中文集或者繁体集设置:这个是非常好设置的, 'useZh' => true,还有其它的很多设置都可以设置
3、源代码:查看有哪些设置,或者查看功能,config.php里面给的实在非常有限(只是几个常用的),你的特殊需求的话去源代码那里一看就清楚了
4、源代码:thinkphp的源代码对我本身而言也是非常简单的,所以不要觉得看框架源代码会浪费时间
5、captcha的全部功能:里面验证码的类,查看源代码,查看所有功能,路径如下:.\vendor\topthink\think-captcha\src\captcha.php 里面,thinkphp这些所有功能的源代码都有
6、研究thinkphp框架源代码:后面要花点时间来研究thinkphp的源代码,可以学到很多东西,而且也可以一天根据它的源代码敲一点
7、编程的灵性(函数使用):框架的设计者也是人,也是正常的人的思维,而且他们的设计的时候也是按照着简约的思想来设计的,所以就算很多功能你不知道,所以稍微按照框架设计者或者正常人的思维想一下,一般想的都是对的,例如:验证器的验证正误的功能,我们知道thinkphp里面的验证一般都是check,那么想到check或者captcha_check($code)就很轻松了
8、编程的灵性2(功能设计):整体的框架使用,比如验证码这个功能,那肯定是1、显示验证码图片 2、获取输入的字段 3、检查输入的字段是否正确 这三个步骤来的,所以在使用之前是可以好好想想的,那么实在是事半功倍
二、thinkphp验证码
1、首先判断系统是否支持验证码
2、使用
1) 页面中
<form action="{:url('check')}" method="post">
<!-- {:captcha_img()} -->
<img src="{:captcha_src()}" alt="">
<input type="text" name="code" id="">
<input type="submit" value="提交">
</form>
2) 判断验证码
$code=input('post.code');
// 判断验证码是否正确
if (captcha_check($code)) {
echo "okokok";
}else{
echo "error";
}
3、验证码相关设置
'captcha'=>[
'codeSet' => '2345678abcdefhijkmnpqrstuvwxyzABCDEFGHJKLMNPQRTUVWXY',
// 验证码字符集合
'expire' => 1800,
// 验证码过期时间(s)
'useZh' => false,
// 使用中文验证码
'zhSet' => '们以我',
// 中文验证码字符串
'useImgBg' => false,
// 使用背景图片
'fontSize' => 25,
// 验证码字体大小(px)
'useCurve' => true,
// 是否画混淆曲线
'useNoise' => true,
// 是否添加杂点
'imageH' => 0,
// 验证码图片高度
'imageW' => 0,
// 验证码图片宽度
'length' => 5,
// 验证码位数
'fontttf' => '',
// 验证码字体,不设置随机获取
'bg' => [243, 251, 254],
// 背景颜色
'reset' => true,
// 验证成功后是否重置
]