【代码总结】GD库中简单的验证码

大体思路:

 

 

代码部分:

 1 <?php
 2 //1.创建画布
 3 $img = imagecreatetruecolor(100,30);
 4 //2.设置颜色  值越小,颜色越深
 5 $color1 = imagecolorallocate($img,rand(100,255),rand(150,255),rand(170,255));
 6 $color2 = imagecolorallocate($img,rand(0,100),rand(0,100),rand(0,100));
 7 //3.填充矩形
 8 imagefilledrectangle($img,0,0,100,30,$color1);
 9 //4.数组的合并、调换、输出键值,并字符转换
10 $str = implode('',array_rand(array_flip(array_merge(range('a','z'),range('A','Z'))),4));
11 //5.填入文本
12 for($i = 0;$i < 4;$i++){
13     imagettftext($img,14,0,rand($i*100/4,($i+1)*(100/4)-10),rand(12,30),$color2,'./simfang.ttf',$str{$i});
14 }
15 //6.干扰元素-->点
16 for($i = 0;$i < 50;$i++){
17     imagesetpixel($img,rand(0,100),rand(0,30),$color2);
18 }
19 //7.输出头像
20 header('Content-type:image/png');
21 imagepng($img);
22 //8.释放资源
23 imagedestroy($img);
24 ?>

 

posted @ 2017-03-22 01:15  水清云影  阅读(325)  评论(0编辑  收藏  举报