PHP验证码函数代码(简单实用)
2015-01-24信息快讯网
这篇文章主要分享了php中简单的验证码函数实现代码,代码比较短,但效果却不错,喜欢的朋友可以试试
效果图:
<?php
/**
* vCode(m,n,x,y) m个数字 显示大小为n 边宽x 边高y
* micxp
*jb51.net
*/
session_start();
vCode(4, 15); //4个数字,显示大小为15
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 < $num; $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);
$_SESSION["VerifyCode"]=$code;
header("Cache-Control: max-age=1, s-maxage=1, no-cache, must-revalidate");
header("Content-type: image/png;charset=gb2312");
imagepng($im);
imagedestroy($im);
}
?>
php+highchats生成动态统计图
PhpDocumentor 2安装以及生成API文档的方法
php实例分享之mysql数据备份
PHP小技巧之JS和CSS优化工具Minify的使用方法
php开启openssl的方法
PHP三元运算的2种写法代码实例
PHP生成迅雷、快车、旋风等软件的下载链接代码实例
PHP FTP操作类代码( 上传、拷贝、移动、删除文件/创建目录)
一个简单的PHP验证码实现代码
php生成随机密码自定义函数代码(简单快速)
thinkphp验证码显示不出来的解决方法
一漂亮的PHP图片验证码实例
ThinkPHP验证码使用简明教程
php实现加减法验证码代码
PHP中对缓冲区的控制实现代码
PHP在引号前面添加反斜杠(PHP去除反斜杠)
php 获取今日、昨日、上周、本月的起始时间戳和结束时间戳的方法
PHP无限分类(树形类)
PHP的PSR规范中文版
PHP中time(),date(),mktime()区别介绍
PHP strstr 函数判断字符串是否否存在的实例代码
PHP JS Ip地址及域名格式检测代码
ThinkPHP利用PHPMailer实现邮件发送实现代码
使用PHP下载CSS文件中的图片的代码
php实现的获取网站备案信息查询代码(360)
php生成图形验证码几种方法小结
PHP生成验证码时“图像因其本身有错无法显示”的解决方法
一个漂亮的php验证码类(分享)
PHP5中GD库生成图形验证码(有汉字)
php仿QQ验证码的实例分析