本文实例为大家分享了几段PHP验证码函数,都很实用,具体内容如下
代码段一:
简单PHP验证码函数function code(){
$im = imagecreatetruecolor(100,40);
$black = imagecolorallocate($im,0);
$white = imagecolorallocate($im,255,255);
imagefill($im,$white);
$strarr=array_merge(range(0,9),range(a,z),range(A,Z));
shuffle($strarr);
$str=join(array_slice($strarr,4));
$mm=rand(0,40);
$aaa=rand(0,0);
$bbb=rand(0,255);
$ccc=rand(0,255);
$color1=imagecolorallocate($im,$aaa,$bbb,$ccc);
imagestring($im,5,$mm,10,$str,$color1);
for($i=0;$i<700;$i++){
$aa=rand(0,255);
$bb=rand(0,255);
$cc=rand(0,255);
$color=imagecolorallocate($im,$aa,$bb,$cc);
$a=rand(0,100);
$b=rand(0,40);
imagesetpixel($im,$a,$b,$color);
}
for($t=0;$t<3;$t++){
$a1=rand(0,255);
$b1=rand(0,255);
$c1=rand(0,255);
$color2=imagecolorallocate($im,$a1,$b1,$c1);
$a2=rand(0,100);
$b2=rand(0,40);
$a3=rand(0,100);
$b3=rand(0,40);
imageline($im,$a2,$b2,$b3,$color2);
}
header("content-type:image/png");
imagepng($im);
}
code() ;
?>
代码段二:
PHP验证码函数$_img = imagecreatetruecolor($_width,$_height);
$_white = imagecolorallocate($_img,250,250);
imagefill($_img,$_white);
$_gray = imagecolorallocate($_img,196,196);
imagerectangle($_img,$_width-1,$_height-1,$_gray);
for ($i=0; $i < 6; $i++) {
$_md_color = imagecolorallocate($_img,mt_rand(200,255),255));
imageline($_img,mt_rand(0,$_width),$_height),$_md_color);
}
for ($i=0; $i < 50; $i++) {
$_md_color = imagecolorallocate($_img,255));
imagestring($_img,1,mt_rand(1,$_width-5),$_height-5),"*",$_md_color);
}
for ($i=0; $i < $_code_length ; $i++) {
$_md_color = imagecolorallocate($_img,102),102));
imagestring($_img,$i * $_width/$_code_length+ mt_rand(1,10),$_height/2),$_SESSION["code"][$i],$_md_color);
}
header("Content-Type:image/png");
imagepng($_img);
imagedestroy($_img);
}