时间:2021-07-01 10:21:17 帮助过:4人阅读
session_start();
$dict = str_split('abcdefghijklmnopqrstuv0123456789');
shuffle($dict);
$_SESSION['word'] = join('', array_slice($dict, -4));
$im = imagecreate(100, 30);
$bg = imagecolorallocate($im, 255, 255, 255);
$char = imagecolorallocate($im, 0, 0, 0);
imagestring($im, 5, 10, 10, $_SESSION['word'], $char);
imagegif($im);
输出
session_start();
$checkCode="";
for($i=0;$i<4;$i++){
$checkCode .=substr('abcdefghijklmnopqrstuvwxyz0123456789', rand(0,35), 1); // $checkCode.=dechex(rand(1,15));
}
//讲随机验证码保存到session中
$_SESSION['myCheckCode']=$checkCode;
//创建图片,并把随机数画上去
$img=imagecreatetruecolor(100,30);
//背景默认就是黑色
//你可以指定背景颜色
$bgcolor=imagecolorallocate($img,0,0,0);
imagefill($img,0,0,$bgcolor);
//创建新的颜色
$white=imagecolorallocate($img,255,255,255);
$blue=imagecolorallocate($img,0,0,255);
$red=imagecolorallocate($img,255,0,0);
$green=imagecolorallocate($img,255,0,0);
//画出干扰线段
for($i=0;$i<20;$i++){
//更好的方法是颜色随机
imageline($img,rand(0,110),rand(0,30),rand(0,110),rand(0,30),imagecolorallocate($img,rand(0,255),rand(0,255),rand(0,255)));
}
//画出噪点,自己画.
//把四个随机值画上去
imagestring($img,rand(1,5),rand(2,80),rand(2,10),$checkCode,$white);
//如果要使用中文
//array imagefttext ( string $font_file , string $text [, array $extrainfo ] )
//imagettftext($img,15,10,20,25,$white,"STXINWEI.TTF","北京你好");
//