没有合适的资源?快使用搜索试试~ 我知道了~
PHP基于GD2函数库实现验证码功能示例
0 下载量 129 浏览量
2020-12-20
06:52:56
上传
评论
收藏 57KB PDF 举报
温馨提示
试读
2页
本文实例讲述了PHP基于GD2函数库实现验证码功能。分享给大家供大家参考,具体如下: 在正式制作验证码之前要先补充点知识,PHP使用GD2函数库实现对各种图形图像的处理,所以我们制作验证码主要要使用到一些GD2函数库里的一些函数: imagecreatetruecolor($width,$height)函数,主要用于创建画布,有2个参数width和height是必选的,代表你所要创建的画布的长和宽; imagecolorallocate($image, $red, $green, $blue)函数,主要用于填充图像,第1个参数是你所创建的图像的标识符,后面3个参数是颜色的RGB设置; imag
资源推荐
资源详情
资源评论
PHP基于基于GD2函数库实现验证码功能示例函数库实现验证码功能示例
本文实例讲述了PHP基于GD2函数库实现验证码功能。分享给大家供大家参考,具体如下:
在正式制作验证码之前要先补充点知识,PHP使用GD2函数库实现对各种图形图像的处理,所以我们制作验证码主要要使用
到一些GD2函数库里的一些函数:
imagecreatetruecolor($width,$height)函数,主要用于创建画布,有2个参数width和height是必选的,代表你所要创建的画
布的长和宽;
imagecolorallocate($image, $red, $green, $blue)函数,主要用于填充图像,第1个参数是你所创建的图像的标识符,后面3
个参数是颜色的RGB设置;
imagefill($image, $x, $y, $color)函数,第一个函数是你创建的图像标识符,第2、3个参数$x、$y是左上角坐标,最后一个
参数是你要填充颜色;
imagestring($image, $font, $x, $y, $string, $color)函数设置文字,且imagestring()函数如果直接绘制中文字符串会出现乱
码,如果要绘制中文字符串可以使用imagettftext()函数;
imagepng($image[,$filename])函数以phg格式将图像输出到浏览器或者保存为文件,第1个参数为你创建的图像标识号,第
2个参数为可选参数,你要保存文件的文件名;
imagesetpixel($image, $x, $y, $color)函数画单个像素点;
imageline($image, $x1, $y1, $x2, $y2, $color)函数画一条线段,$x1、$y1是线段是左上角坐标,$x2、$y2是线段的右下角
坐标。
代码主要如下:
<?php
//创建画布
$img = imagecreatetruecolor(100, 50);
//创建颜色
$black = imagecolorallocate($img, 0x00, 0x00, 0x00);
$green = imagecolorallocate($img, 0x00, 0xFF, 0x00);
$white = imagecolorallocate($img, 0xFF, 0xFF, 0xFF);
//画布填充颜色
imagefill($img, 0, 0, $white);//背景为白色
//生成随机验证码
$code = make(5);
//设置文字
imagestring($img, 5, 10, 10, $code, $black);//黑字
//加入噪点干扰
for ($i = 0; $i <300; $i++){
imagesetpixel($img, rand(0, 100), rand(0, 100), $black);
imagesetpixel($img, rand(0, 100), rand(0, 100), $green);
}
//加入线段干扰
for ($n = 0; $n <=1; $n++){
imageline($img, 0, rand(0, 40), 100, rand(0, 40), $black);
imageline($img, 0, rand(0, 40), 100, rand(0, 40), $white);
}
//输出验证码
header("content-type: image/png");//告诉浏览器这个文件是一个png图片
imagepng($img);
//销毁图片,释放内存
imagedestroy($img);
//生成随机验证码的函数
function make($length){
$code = 'abcdefghijklmnopqrsruvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
//str_shuffle()函数用于打乱字符串
return substr(str_shuffle($code), 0, $length);
}
?>
实现效果如下图:
更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP图形与图片操作技巧汇总》、《PHP数组(Array)操作技巧大
全》、《PHP数据结构与算法教程》、《php程序设计算法总结》、《PHP数学运算技巧总结》、《php字符串(string)用法总
结》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。
资源评论
weixin_38516956
- 粉丝: 6
- 资源: 973
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Screenshot_20240430_144340_com.ss.android.ugc.live.jpg
- 回到山沟沟.mp3
- 基于matlab实现自适应波束形成RLS及LMS算法仿真源程序1.rar
- 基于matlab实现自己编写的基于卡尔曼滤波的利用加速度传感器的计步器,测试数据是传感器放在腰部和手臂 .rar
- 基于matlab实现阵列信号处理,波束形成.rar
- 111111111111111111
- 基于matlab实现计步器编程;对当前的计步器装置的数值算法模拟 .rar
- Mdb学习查看PW;access;mdb;pw;password;patch
- 基于matlab实现关于语音信号声源定位DOA估计所用的一些传统算法.rar
- 基于ultralytics-yolov8, 将其检测/分类/分割/姿态等任务移植到rk3588上
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功