PHP验证码代码分享

来源:互联网 发布:奇门择日软件 编辑:程序博客网 时间:2024/05/18 09:37
 
<?phpsession_start();   //在文件的最开头打开session//把英文和中文分别放入两个数组中$english_arr=array('q','w','e','r','t','y','u','i','o','p','a','s','d','f','g','h','j',                        'k','l','z','x','c','v','b','n','m');$chinese_arr=array('一','二','三','四','五','六','七','八','九','十','零','木','和','我',                        '人','有','的','右','主','产','为','这','工','上','下','左');/*** 取得中文和英文*//*** 取得一个随机数, 随机字母,随机中文*/for($i=0;$i<5;$i++){    $index=rand(0,2);    if($index=='0')    {        $num.=rand(0,9);//        echo "<font color=red>$num</font><br>";    }    else if($index=='1')    {        $num.=$english_arr[rand(0,25)];//        echo "<font color=blue>$num</font><br>";    }    else if($index=='2')    {//        echo $num;        $num.=$chinese_arr[rand(0,25)];   //如果加入的是中文,则要转换编码//        echo "<font color=green>$num</font><br>";    }}$_SESSION[check_num]=$num;  //把这个验证码记入session中//echo $_SESSION[check_num];//  imagecreatetruecolor(宽,高)$image=imagecreatetruecolor(150,50);   //创建一个100,30的图片//  imagecolorallocate(图片名,红,蓝,绿)   三原色imagecolorallocate($image,rand(0,255),rand(0,255),rand(0,255));//第一次是设置图片背景色,三原色随机$color=imagecolorallocate($image,255,255,255);//以后的为了创建一种颜色// imagestring(图片名,字体类型1-6六种,X坐标,Y坐标,内容,颜色)//imagestring($image,rand(3,6),10,3,$num,$color);   //把内容写到图片中  不能输出中文//  imagettftext(图片名,字体大小,偏移角度,X坐标,Y坐标,颜色,字体文件地址,输入的内容)  这个内容必须要在输入的时候转换编码imagettftext($image,rand(15,18),0,rand(2,50),rand(30,39),$color,'simkai.ttf',iconv('GBK','UTF-8',$num));   //把内容写到图片中,可以有中文/*** 画线和点做干扰*/for($i=0;$i<10;$i++){     $linecolor=imagecolorallocate($image,rand(0,255),rand(0,255),rand(0,255));     imageline($image,rand(0,150),rand(0,50),rand(0,150),rand(0,50),$linecolor);}  for($i=0;$i<200;$i++){     $pixelcolor=imagecolorallocate($image,rand(0,255),rand(0,255),rand(0,255));      imagesetpixel($image,rand(0,150),rand(0,50),$pixelcolor);}/**  * 输出图片  *///echo dechex(rand(0,15));header("ContentType:image/jpeg");   //设置此文件是以什么形势输出   这里是作为一张图片imagejpeg($image);  //输出jpeg格式的图片?>


via:http://www.iteye.com/topic/1145030

0 0
原创粉丝点击