首页  >  文章  >  php教程  >  收藏一个比较美观的PHP验证码类

收藏一个比较美观的PHP验证码类

WBOY
WBOY原创
2016-06-13 09:38:101167浏览

验证码的用途就不用多说了,之前也写了一篇关于PHP验证码的文章,但是没有封装成类。下面就介绍一个PHP的一个验证码类。

<?php
    session_start();
    Header("Content-type: image/gif");
	
    class SecurityCode
    {
        private $codes = '';
		
        function __construct()
        {
            $code = '0-1-2-3-4-5-6-7-8-9-A-B-C-D-E-F-G-H-I-J-K-L-M-N-O-P-Q-R-S-T-U-V-W-X-Y-Z';
            $codeArray = explode('-',$code);
            shuffle($codeArray);
            $this->codes = implode('',array_slice($codeArray,0,4));
        }
		
        public function CreateImg()
        {
            $_SESSION['check_pic'] = $this->codes;
            $img = imagecreate(70,25);
            imagecolorallocate($img,222,222,222);
            $testcolor1 = imagecolorallocate($img,255,0,0);
            $testcolor2 = imagecolorallocate($img,51,51,51);
            $testcolor3 = imagecolorallocate($img,0,0,255);
            $testcolor4 = imagecolorallocate($img,255,0,255);
			
            for ($i = 0; $i < 4; $i++)
            {
                imagestring($img,rand(5,6),8 + $i * 15,rand(2,8),$this->codes[$i],rand(1,4));
            }
            imagegif($img);
        }
    }
	
    $code = new SecurityCode();
    $code->CreateImg();
	
	$code = NULL;
?>

封装成类之后,加入了构造函数,使用起来也方便些。你也可以继续完善下这个验证码类,比如加入析构函数,如何更节省内存等等。

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn