// +---------------------------------------------------------------------- \think\Route::get('captcha/[:id]', "\\think\\captcha\\CaptchaController@index"); \think\Validate::extend('captcha', function ($value, $id = "") { return captcha_check($value, $id, (array)\think\Config::get('captcha')); }); \think\Validate::setTypeMsg('captcha', '验证码错误!'); /** * @param string $id * @param array $config * @return \think\Response */ function captcha($id = "", $config = []) { $captcha = new \think\captcha\Captcha($config); return $captcha->entry($id); } /** * @param $id * @return string */ function captcha_src($id = "") { return \think\Url::build('/captcha' . ($id ? "/{$id}" : '')); } /** * @param $id * @return mixed */ function captcha_img($id = "") { return 'captcha'; } /** * @param $value * @param string $id * @param array $config * @return bool */ function captcha_check($value, $id = "", $config = []) { $captcha = new \think\captcha\Captcha($config); return $captcha->check($value, $id); }