生成验证码图片的PHP代码
原创
52cxy
11-27 12:09
阅读数:1363
生成验证码图片,支持数字、大小写字母
/**
* 生成验证码图片
* @param $width - 验证码图片宽
* @param $height - 验证码图片高
*/
function generateThumbnail($width=80, $height=35)
{
$captcha = '';
for($i = 0;$i < 4;$i++){
switch(mt_rand(0,2)){
case 0: //数字
$captcha .= chr(mt_rand(49,57));
break;
case 1: //大写字母
$captcha .= chr(mt_rand(65,90));
break;
case 2: //小写字母
$captcha .= chr(mt_rand(97,122));
break;
}
}
$imgData = imagecreatetruecolor(80, 35);
//随便生成验证码背景颜色
$bgData = imagecolorallocate($imgData, mt_rand(200,255), mt_rand(200,255), mt_rand(200,255));
//填充背景色
imagefill($imgData, 0, 0, $bgData);
//在背景中写入验证码字符
for($i = 0;$i < 4;$i++){
//生成文字颜色
$txt = imagecolorallocate($imgData, mt_rand(50,150), mt_rand(50,150), mt_rand(50,150));
//写入文字
imagestring($imgData, mt_rand(1,5),5 + $i*20, 10, $captcha[$i], $txt);
}
header('Content-type:image/png');
imagepng($imgData);
imagedestroy($imgData);
}共0条评论