/**
* Created by PhpStorm.
* User: Administrator
* Date: 2019/10/28
* Time: 13:29
*/
//image.func.php
require_once "string.func.php";
//通过GD库做验证码
//创建画布
$width = 80;
$height = 28;
$image = imagecreatetruecolor($width,$height);
$white = imagecolorallocate($image,255,255,255);
$black = imagecolorallocate($image,0,0,0);
//用矩形填充画布
imagefilledrectangle($image,1,1,$width-2,$height-2,$white);
// $type = 1;
//$length = 4;
$chars = buildRandomString($type,$length);
$sess_name = "verify";
$fontfiles = array("dutch.ttf","dutchb.ttf","dutchbi.ttf","dutcheb.ttf","dutchi.ttf","tt0524m_.ttf","tt0586m_.ttf","tt1018m_.ttf");
$_SESSION[$sess_name] = $chars;
for($i=0;$i
$size = mt_rand(14,18);
$angle = mt_rand(-15,15);
$x = 5+$i*$size;
$y = mt_rand(20,26);
$fontfile = "../fonts/".$fontfiles[mt_rand(0,$fontfiles)-1];
$color = $imagecolorallocate($image,mt_rand(50,90),mt_rand(80,200),mt_rand(90,180));
$text = substr($chars,$i,1);
imagettftext($image,$size,$angle,$x,$y,$color,$fontfile,$text);
}
header("content-type:image/gif");
imagegif($image);
imagedestroy($image);//string.func.php
/**
* Created by PhpStorm.
* User: Administrator
* Date: 2019/10/28
* Time: 13:29
*/
//生成随机字符串
function buildRandomString($type = 1,$length = 4){
if($type == 1){
$chars = join("",range(0,9));
}elseif($type == 2){
$chars = join("",array_merge(range("a","z"),range("A","Z")));
}elseif($type == 3){
$chars = join("",array_merge(range("a","z"),range("A","Z"),range(0,9)));
}
if($length>strlen($chars)){
exit("字符串长度不够");
}
$chars = str_shuffle($chars);
return substr($chars,0,$length);
}