php实现网页端验证码功能

前端之家收集整理的这篇文章主要介绍了php实现网页端验证码功能前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我们在实际开发中,会用到短信验证码以及网页验证码,相对来说网页验证码的成本比较低,安全系数也还可以,接下来我们就来做一个网页端的验证码,直接上代码

首先来说一下文件目录结构:

    |----------PHPyanzheng 项目文件

      |----fonttype 文件夹放字体文件,字体文件一般以 .ttf和.otf结尾

      |----1.PHP 里面放PHP语言代码

      |----index.html 里面放网页布局

1.PHP

PHP;"> PHP header('content-type:image/jpeg');//定义一下代码以jpeg文件来解析 $width = 120;//定义了图像的宽 $height = 40;//定义了图像的高 $element = array('q','w','e','r','t','y','u','i','o','p','l','k','j','h','g','f','d','s','a','z','x','c','v','b','n','m','1','2','3','4','5','6','7','8','9','0','Q','W','E','R','T','Y','U','I','O','P','A','S','D','F','G','H','J','K','L','M','N','B','V','C','X','Z');//定义一个显示文本的数组 $string = ''; for($i=0;$i<4;$i++){ $string.=$element[rand(0,count($element)-1)];//随机产生四个文本目标 } $img = imagecreatetruecolor($width,$height);//设置验证区宽高 $colorBg = imagecolorallocate($img,rand(185,255),255));//产生200-255的随机数 $colorBorder = imagecolorallocate($img,rand(50,100),100));//边框颜色 $colorDian = imagecolorallocate($img,rand(0,100));//背景小点的颜色 $colorLine = imagecolorallocate($img,255)); $colorString = imagecolorallocate($img,rand(20,80),80)); imagefill($img,$colorBg);//设置位置和背景颜色 imagerectangle($img,$width-1,$height-1,$colorBorder);//画一个边框 for($i=0;$i<200;$i++){//循环出200个干扰点 imagesetpixel($img,$width-1),$height-1),$colorDian); } for($i=0;$iimagettftext($img,25,rand(5,15),40),39,$colorString,'fonttype/PrincetownStd.otf',$string);
// 图像名称 字体大小 倾斜角度 起始位置X轴 起始位置Y轴 颜色 字体位置 显示的内容
imagejpeg($img);//输出图像
?>

index.html

<Meta charset="UTF-8"> 孙三峰--验证码

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程之家。

猜你在找的PHP相关文章