博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
php验证码大小,PHP自定义大小验证码的方法详解
阅读量:4964 次
发布时间:2019-06-12

本文共 1370 字,大约阅读时间需要 4 分钟。

function vCode($num=4,$size=20, $width=0,$height=0){

!$width && $width = $num*$size*4/5+5;

!$height && $height = $size + 10;

// 去掉了 0 1 O l 等

$str = "23456789abcdefghijkmnpqrstuvwxyzABCDEFGHIJKLMNPQRSTUVW";

$code = '';

for ($i=0; $i

$code.= $str[mt_rand(0, strlen($str)-1)];

}

// 画图像

$im = imagecreatetruecolor($width,$height);

// 定义要用到的颜色

$back_color = imagecolorallocate($im, 235, 236, 237);

$boer_color = imagecolorallocate($im, 118, 151, 199);

$text_color = imagecolorallocate($im, mt_rand(0,200), mt_rand(0,120), mt_rand(0,120));

// 画背景

imagefilledrectangle($im,0,0,$width,$height,$back_color);

// 画边框

imagerectangle($im,0,0,$width-1,$height-1,$boer_color);

// 画干扰线

for($i=0;$i<5;$i++){

$font_color = imagecolorallocate($im, mt_rand(0,255), mt_rand(0,255), mt_rand(0,255));

imagearc($im,mt_rand(-$width,$width),mt_rand(-$height,$height),mt_rand(30,$width*2),mt_rand(20,$height*2),mt_rand(0,360),mt_rand(0,360),$font_color);

}

// 画干扰点

for($i=0;$i<50;$i++){

$font_color = imagecolorallocate($im, mt_rand(0,255), mt_rand(0,255), mt_rand(0,255));

imagesetpixel($im,mt_rand(0,$width),mt_rand(0,$height),$font_color);

}

// 画验证码

@imagefttext($im, $size , 0, 5, $size+3, $text_color, 'c://WINDOWS//Fonts//simsun.ttc',$code);

header("Cache-Control: max-age=1, s-maxage=1, no-cache, must-revalidate");

header("Content-type: image/png");

imagepng($im);

imagedestroy($im);

}

?>

转载地址:http://yeqhp.baihongyu.com/

你可能感兴趣的文章
CSS格式、排版
查看>>
VSCODE Net Core 2.0 MVC
查看>>
phpcms后台管理
查看>>
地球的运动
查看>>
WinForm窗体自适应分辨率
查看>>
每天一个linux命令(1):ls命令
查看>>
图论:次短路
查看>>
线程池
查看>>
图片轮播的思路
查看>>
PXC 安装 for 5.7
查看>>
获取插入到电脑上的手机型号
查看>>
预处理log2n
查看>>
sy-subrc 不同值的意思
查看>>
Linux系统基础优化及常用命令
查看>>
java随机数:彩票抽奖 + 验证码
查看>>
Java程序员简历模板
查看>>
学习进度01
查看>>
图解排序算法(三)之堆排序
查看>>
Python3 系列之 编程规范篇
查看>>
多线程篇-GCD-常用方法的使用
查看>>