代码部分
<?php
/**
* Created by PhpStorm.
* User: QLX
* Date: 2019/8/29
* Time: 10:16
* 生成动态验证码
*/
header('Content-Type:image/jpeg');
$width = 120;
$height = 40;
$chars = array('a','b','c','d','e','f','g','h',
'i','j','k', 'l','m','n', 'o','p','q','r', 's',
't','u','v', 'w', 'x','y','z', 'A', 'B', 'C', 'D',
'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L','M', 'N', 'O',
'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y','Z');
$str = '';
for ($index = 0; $index<4;$index++){
$str .= $chars[rand(0,count($chars)-1)];
}
$img = imagecreatetruecolor($width,$height); //绘制照片
$colorBg = imagecolorallocate($img,rand(200,255),rand(200,255),rand(200,255)); //绘制颜色
$colorDot = imagecolorallocate($img,rand(100,200),rand(100,200),rand(100,200)); //点的颜色
$colorLine = imagecolorallocate($img,rand(100,200),rand(100,200),rand(100,200)); //线的颜色
$colorFont = imagecolorallocate($img,rand(10,100),rand(10,100),rand(10,100)); //线的颜色
imagefill($img,0,0,$colorBg); //填充背景颜色
for ($i=0;$i<200;$i++){
imagesetpixel($img,rand(0,$width-1),rand(0,$height-1),$colorDot); //在图片上绘制随机点
}
for ($j=0;$j<5;$j++){
imageline($img,rand(0,$width/2),rand(0,$height),rand($width/2,$width-1),rand(0,$height),$colorLine);
}
imagettftext($img,20,rand(-5,10),rand(1,15),rand(20,35),$colorFont,'kanit-v1-latin-700italic.woff',$str);
imagejpeg($img); //保存照片
imagedestroy($img); //销毁照片