thinkphp验证码(总结之后,效率非常好)

时间:2022-03-16 03:56:52

thinkphp验证码(总结之后,效率非常好)

一、总结

1、总结:总结之后,效率非常好,复习的时候也才方便,也能深入到细处,非常方便建立熟悉感和突破使用困境

2、验证码使用中文集或者繁体集设置:这个是非常好设置的, 'useZh'    => true,还有其它的很多设置都可以设置

3、源代码:查看有哪些设置,或者查看功能,config.php里面给的实在非常有限(只是几个常用的),你的特殊需求的话去源代码那里一看就清楚了

4、源代码:thinkphp的源代码对我本身而言也是非常简单的,所以不要觉得看框架源代码会浪费时间

5、captcha的全部功能:里面验证码的类,查看源代码,查看所有功能,路径如下:.\vendor\topthink\think-captcha\src\captcha.php 里面,thinkphp这些所有功能的源代码都有

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,

// 验证成功后是否重置

]