下载验证码库
http://packagist.p2hp.com/packages/gregwar/captcha

cmd项目目录输入:
composer require gregwar/captcha
更新composer update

1、下载之后将引入验证码包中的类

  1. use Gregwar\Captcha\CaptchaBuilder;

路由要设置一个参数,控制器接收形参,视图则传递一个数(实参),该数,作为js代码的随机数,则用来替换图片验证码

2、控制器编写验证码的规则

 $builder = new CaptchaBuilder;
        //可以设置图片宽高及字体
        $builder->build($width = 100, $height = 40, $font = null);
        //获取验证码的内容
        $phrase = $builder->getPhrase();

        //把内容存入session
        Session::flash('milkcaptcha', $phrase);
        //生成图片
       /* header("Cache-Control: no-cache, must-revalidate");
        header('Content-Type: image/jpeg');*/
        $builder->output();

3、视图编写

<a onclick="javascript:re_captcha();" >
            <img src="{{ action('ValidatorController@index',['tmp'=>1]) }}"  alt="验证码" title="刷新图片" width="100" height="40" id="aa" border="0">
        </a>
        <script>
            function re_captcha() {
                $url = "{{ URL('validator') }}";
                $url = $url + "/" + Math.random();
                document.getElementById('aa').src=$url;
            }
        </script>

4、提交数据,处理数据

$userInput = \Request::get('captcha');

if (Session::get('milkcaptcha') == $userInput) {
    //用户输入验证码正确
    return '您输入验证码正确';
} else {
    //用户输入验证码错误
    return '您输入验证码错误';
}