可以对⽣成的验证码设置相关的参数,以达到不同的显⽰效果。这些参数包括: 参数描述
expire验证码的有效期(秒)
useImgBg是否使⽤背景图⽚默认为false
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 新增
参数设置使⽤两种⽅式。
实例化传⼊参数:
1. $config = array(
2. 'fontSize'=>30,// 验证码字体⼤⼩
3. 'length'=>3,// 验证码位数
4. 'useNoise'=>false,// 关闭验证码杂点
5. );
6. $Verify =new \Think\Verify($config);
7. $Verify->entry();
或者采⽤动态设置的⽅式,如:
1. $Verify =new \Think\Verify();
2. $Verify->fontSize =30;
3. $Verify->length =3;
4. $Verify->useNoise =false;
5. $Verify->entry();
⽣成的验证码如图所⽰:
验证码检测
可以⽤Think\Verify类的check⽅法检测验证码的输⼊是否正确,例如,下⾯是封装的⼀个验证码检测的函数:
1. // 检测输⼊的验证码是否正确,$code为⽤户输⼊的验证码字符串
2. function check_verify($code, $id =''){
车联网天线3. $verify =new \Think\Verify();
4. return $verify->check($code, $id);
5. }
验证码字体
默认情况下,验证码的字体是随机使⽤ThinkPHP/Library/Think/Verify/ttfs/⽬录下⾯的字体⽂件,我们可以指定验证码的字体,例如:
1. $Verify =new \Think\Verify();
2. // 验证码字体使⽤ ThinkPHP/Library/Think/Verify/f
3. $Verify->fontttf ='5.ttf';
4. $Verify->entry();
背景图⽚
⽀持验证码背景图⽚功能,可以如下设置:
1. $Verify =new \Think\Verify();
2. // 开启验证码背景图⽚功能随机使⽤ ThinkPHP/Library/Think/Verify/bgs ⽬录下⾯的图⽚
3. $Verify->useImgBg =true;
4. $Verify->entry();手动滤水器
效果如图所⽰:
中⽂验证码
如果要使⽤中⽂验证码,可以设置:
1. $Verify =new \Think\Verify();植物蛋白提取
2. // 验证码字体使⽤ ThinkPHP/Library/Think/Verify/f
3. $Verify->useZh =true;
4. $Verify->entry();
显⽰效果如图:
如果⽆法正常显⽰,请确认你的 ThinkPHP/Library/Think/Verify/zhttfs/ ⽬录下⾯存在中⽂字体⽂件。
指定验证码字符
3.2.1版本以上,我们可以指定验证码的字符,通过重新设置codeSet参数即可,例如:
1. $Verify =new \Think\Verify();
2. // 设置验证码字符为纯数字
3. $Verify->codeSet ='0123456789';
4. $Verify->entry();
如果是中⽂验证码,可以使⽤zhSet参数设置,例如:
微型弹簧1. $Verify =new \Think\Verify();
2. $Verify->useZh =true;
3. // 设置验证码字符
4. $Verify->zhSet ='们以我到他会作时要动国产的⼀是⼯就年阶义发成部民可出能⽅进在了不和有⼤这';
5. $Verify->entry();