一个好用的验证码PHP工具类

发布时间:2020-02-14 发布网站:脚本之家
脚本之家收集整理的这篇文章主要介绍了一个好用的验证码PHP工具类脚本之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

下面是脚本之家 jb51.cc 通过网络收集整理的代码片段。

脚本之家小编现在分享给大家,也给大家做个参考。

 
<?php
/**
 * 验证码类
 */
class Base_Tool_Verify{
    /**
     * 生成验证码方法
     */
    public static  function createCode(){
        //生成验证码图片
        // 全数字
        $str = "D,B,2,3,4,5,6,7,8,9,A,C,D,E,F,G,H,W,J,K,M,N,P,Q,R,S,T,U,V,X,Y,Z";      //要显示的字符,可自己进行增删
        $list = explode(",",$str);
        $cmax = count($list) - 1;
        $verifyCode = '';
        for ( $i=0; $i < 4; $i++ ){
            $randnum = mt_rand(0,$cmax);
            $verifyCode .= $list[$randnum];           //取出字符,组合成为我们要的验证码字符
        }
        $_SESSION['code'] = $verifyCode;        //将字符放入SESSION中
         
        $im = imagecreate(80,28);    //生成图片
        $black = imagecolorallocate($im,0);     //此条及以下三条为设置的颜色
        $white = imagecolorallocate($im,244,249,244);
        $gray = imagecolorallocate($im,rand(200,255),255));
        $red = imagecolorallocate($im,255));
        $rand_color = imagecolorallocate($im,rand(0,255));
        $rand_color2 = imagecolorallocate($im,255));
        imagefill($im,$white);     //给图片填充颜色
        $pix=imagecolorallocate($im,255));
        mt_srand();
        for($i=0;$i<100;$i++)
        {
        imagesetpixel($im,mt_rand(0,180),35),$pix);    
        }
        imageline($im,28),80,$rand_color);  
        imageline($im,$rand_color2);
         
        //将验证码绘入图片
        $mycolor = imagecolorallocate($im,78,152);
        $path = API_PATH.DS.'Base'.DS.'Tool';
        putenv('GDFONTPATH=' . $path);
        $font = 'simhei.ttf';
        $arrstr = str_split($verifyCode);
        imagettftext($im,20,50),10,rand(20,30),$mycolor,$font,$arrstr[0]);
        imagettftext($im,15,$arrstr[1]);
        imagettftext($im,30,$arrstr[2]);
        imagettftext($im,40,$arrstr[3]);
        $font2=imagecolorallocate($im,41,163,238);
        imagerectangle($im,1,$font2);
        imagepng($im);
        imagedestroy($im);
    }
}

以上是脚本之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。

如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。

总结

以上是脚本之家为你收集整理的一个好用的验证码PHP工具类全部内容,希望文章能够帮你解决一个好用的验证码PHP工具类所遇到的程序开发问题。

如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:76874919,请注明来意。
标签: