gd图像——验证码

来源:互联网 发布:linux 图形界面 编辑:程序博客网 时间:2024/05/29 18:47
<?php
ob_clean();
$im=imagecreatetruecolor(152,22);//创建画布
$bgcolor=imagecolorallocate($im,225,235,235);//调色
$boder=imagecolorallocate($im,0,0,235);//边框颜色
$tcolor=imagecolorallocate($im,200,0,235);
$prink=imagecolorallocate($im,200,0,235);
imagefill($im,10,10,$bgcolor);//填充背景色
imagerectangle($im,1,1,150,20,$boder);//绘制边框
for($i=0;$i<4;$i++)
{
 $num_case=rand(0,2);//根据产生的随机数的不同确定是数字、小写字母或大写字母
 switch($num_case)
 {
 case 0: $num=rand(65,90); break;
 case 1: $num=rand(97,122); break;
 default: $num=rand(48,57); //数字的ASSCII码
 
 }
 $text[$i]=sprintf("%c",$num);//将随机长生的ASSCII码转换为相应的字符
 imagettftext($im,rand(15,20),rand(5,15),35*$i,20,$tcolor,"ARIAL.TTF",$text[$i]);
}
for($i=0;$i<100;$i++){
imagesetpixel($im,rand(1,149),rand(1,22),$prink);
}
session_start();
$_SESSION["ckcode"]=implode($text);
header("Content-type:image/jpg");//设置输出类型
imagepng($im);
imagedestroy($im);
?>
原创粉丝点击