100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > php实现生成混合验证码与图像验证码并测试(code)

php实现生成混合验证码与图像验证码并测试(code)

时间:2022-09-25 13:12:28

相关推荐

php实现生成混合验证码与图像验证码并测试(code)

后端开发|php教程

GD验证码,WAMPSERVE

后端开发-php教程

本篇文章给大家带来的内容是关于php实现生成混合验证码与图像验证码并测试(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

诱导支付自动赚钱源码有教程,ubuntu下jdk路径,tomcat7虚拟内存,爬虫箱线路,php发展方向有哪些,马韬 seolzw

生成混合验证码,并封装成函数,文件名:buildVerifyCode.func.php

JAVAweb商城源码百度云,ubuntu下vi插件,tomcat服务列表未找到,爬虫标本展,php 一维变多维,seo ailzw

//range(a,z)将括号中的内容作为键值生成一个索引数组//array_merge($array1,$array2)合并两个数组中的键值,生成新索引数组//array_flip()将括号中的内容,键名与键值对换//array_rand($array,$length)随机取出$array中$length长度的键名作为新数组的键值,生成一个索引数组//join(\,$array)以空连接数组中的值,以数组的内容生成字符串

<?phpfunction buildVerifyCode($type=2,$length=4){switch ($type) {case 0:$string=join(\,array_rand(range(0,9),$length));break;case 1:$string=join(\,array_rand(array_flip(array_merge(range(a,z),range(A,))),$length));break;case 2:$string=join(\,array_rand(array_flip(array_merge(range(a,z),range(A,),range(0,9))),$length));break;}return $string;}

测试生成的验证码是否正确,文件名:getCode.php

蚂蚁分类源码使用方法,ubuntu+vim+跳转,tomcat 部署服务器,selenium爬虫412,php自动搜索下载图片,dsp seolzw

<?phprequire uildVerifyCode.func.php;echo buildVerifyCode();// $fontfiles=[msyh.ttc,msyhbd.ttc,msyhl.ttc,simsun.ttc,Sitka.ttc];// $fontfile=$fontfiles[mt_rand(0,count($fontfiles)-1)];// var_dump($fontfile);

生成图像验证码,具体注释有空再写,文件名:getVerifyCodeImg.func.php

<?php$width=100;$height=30;//创建画布,默认底色黑色,rgb0,0,0$image=imagecreatetruecolor($width,$height);//创建白色,方便覆盖画布$white=imagecolorallocate($image,255,255,255);//创建白色矩形覆盖原始画布imagefilledrectangle($image,1,1,$width-2,$height-2,$white);require uildVerifyCode.func.php;$type=2;$length=4;$verifyCode=buildVerifyCode($type,$length);for($i=0;$i<$length;$i++){$color=imagecolorallocate($image,mt_rand(50,90),mt_rand(80,200),mt_rand(90,150));$size=mt_rand(14,16);$angle=mt_rand(-15,15);$x=($i*100/5)+$size;$y=mt_rand(20,25);$fontfiles=[msyh.ttc,msyhbd.ttc,msyhl.ttc,simsun.ttc,Sitka.ttc];$fontfile="../fonts/".$fontfiles[mt_rand(0,count($fontfiles)-1)];$text=substr($verifyCode,$i,1);imagettftext($image,$size,$angle,$x,$y,$color,$fontfile,$text);}$pixel=120;if($pixel){$pixelcolor=imagecolorallocate($image,mt_rand(150,170),mt_rand(100,140),mt_rand(90,160));for($i=0;$i<$pixel;$i++){imagesetpixel($image,mt_rand(0,$width-1),mt_rand(0,$height-1),$pixelcolor);}}$line=4;if($line){for($i=0;$i<$line;$i++){imageline($image,mt_rand(0,$width-1),mt_rand(0,$height-1),mt_rand(0,$width-1),mt_rand(0,$height-1),$pixelcolor);}}header(content-type:image/png);imagepng($image);imagedestroy($image);

tp5框架ajax异步添加数据的代码实现

thinkphp中无限级栏目的排序实现代码

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。