tp5下自定义验证码的生成

时间:2018-05-27 00:17:52 类型:PHP
字号:    

tp5下直接生成的验证码, 有些时候会不符合我们的要求, 这时需要用到自定义代码的生成, 然而TP5文档手册写的实例不是非常清晰, 很多人看了容易云里雾里, 这里分享给大家 验证码的生成,调用,及验证方法

1.  引入Captcha及生成自定义函数代码

     

namespace app\index\controller;
use think\Controller;
use think\Config;
use think\Validate;
use think\captcha\Captcha;
/*use think\Request;*/
class Stu extends Controller{
	public function getCode(){
		$config =    [
		    // 验证码字体大小
		    'fontSize'    =>    30,    
		    // 验证码位数
		    'length'      =>    3,   
		    // 关闭验证码杂点
		    'useNoise'    =>    false,
		    'useZh'       => true 
		];
		$captcha = new Captcha($config);
		return $captcha->entry();
	}
}


2. 视图文件引用

<img src="<?php echo url("stu/getcode"); ?>" 
onclick="this.src='<?php echo url("stu/getcode"); ?>?id='+Math.random();" />
3. 使用TP 验证码验证
 $validate = new Validate([
		    '__token__' => 'require|token'
		]);
		$data = [
		    'captcha' => $this->request->param("code")
		];
		if (!$validate->check($data)) {
		    echo($validate->getError());
		}