PHP基于GD2函数库实现验证码功能示例_第1页
PHP基于GD2函数库实现验证码功能示例_第2页
PHP基于GD2函数库实现验证码功能示例_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第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是线段的右下角坐标。

代码主要如下:

//创建画布

$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$i++){

imagesetpixel($img,rand(0,100),rand(0,100),$black);

imagesetpixel($img,rand(0,100),rand(0,100),$green);

//加入线段干扰

for($n=0;$n$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);

//生成随机验证码的函数

functionmake($length){

$code='abcdefghijklmnopqrsruvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论