巩义网站建设,巩义网站制作,巩义做网站-全栈网络

巩义做网站之网站验证码实例过程(二)
当前位置:首页 > 建站知识 > 网站代码 >

巩义做网站之网站验证码实例过程(二)

时间: 2019-11-15 分类: 网站代码 浏览次数:

前面我们介绍了在巩义做网站中,使用php绘制画布并写入验证码的方式及函数,下面我们具体写一个验证码的实例为大家做一个参考。 1....


前面我们介绍了在巩义做网站中,使用php绘制画布并写入验证码的方式及函数,下面我们具体写一个验证码的实例为大家做一个参考。

1.产生随机4位字符串,
使用range()进行随机创建数组,通过array_merge()形成一个数组;然后使用shuffle()打乱该数组,并使用array_rand()函数从数组中取出多个单元,并返回取到的单元的键值,再通过循环的方式找到对应的字符;
$arr1=array_merge(range('A','Z'),range('a','z'),range('0','9'));
shuffle($arr1);
$arr2=array_rand($arr1,4);
$str='';
foreach ($arr2 as $index) {
$str.=$arr1[$index];
}
// print_r($str);//注意:数组和字符串不能用echo打印
 
2.创建空的画布,
$width=100;
$height=30;
$img=imagecreatetruecolor($width, $height);
 
3.绘制一个带填充颜色的矩形;
$color1=imagecolorallocate($img,mt_rand(0,255),mt_rand(0,255),mt_rand(0,255));//这是使用mt_rand对颜色进行随机;
imagefilledrectangle($img,0,0,$width,$height,$color1);
 
4.绘制干扰点
for ($i=1;$i<1000;$i++) {
$color2=imagecolorallocate($img,mt_rand(0,255),mt_rand(0,255),mt_rand(0,255));
    imagesetpixel($img, mt_rand(0,$width), mt_rand(0,$height), $color2);
}
 
5.往图像中写入ttf字体,imagettftext()
    $fontfile="C:\Windows\Fonts\simfang.ttf";
$color3=imagecolorallocate($img,mt_rand(0,255),mt_rand(0,255),mt_rand(0,255));
    imagettftext($img,28,0,10,26,$color3,$fontfile,$str);
 
6.输出图像到浏览器
    header("content-Type:image/png");
    imagepng($img);
 
7.销毁图像,
    imagedestroy($img);

使用php编写验证吗
本文关键词: 验证码 未经允许不得转载:郑州网站建设|郑州网站制作|荥阳网站建设|巩义网站建设|网站优化-全栈网络



说点什么吧
  • 全部评论(0
    还没有评论,快来抢沙发吧!
Copyright © 2017-2020 版权所有:全栈网络工作室 备案号:豫ICP备2023004016号 HTML网站地图
郑州网站制作|郑州做网站|巩义网站制作|荥阳做网站|巩义做网站-全栈网络