文档章节

PHP生成随机图片验证码类分享

高处胜寒
 高处胜寒
发布于 2016/06/20 21:33
字数 228
阅读 14
收藏 0
class Verify{
    public function show() {
        $len = 5;
        $str = "ABCDEFGHIJKLNMPQRSTUVWXYZ123456789";

        $im = imagecreatetruecolor ( 70, 20 );
        $bgc = imagecolorallocate($im, 255, 255, 255);
        $bgtxt = imagecolorallocate($im, 220, 220, 220);

        //随机调色板
        $colors = array(
            imagecolorallocate($im, 255, 0, 0),
            imagecolorallocate($im, 0, 200, 0),
            imagecolorallocate($im, 0, 0, 255),
            imagecolorallocate($im, 0, 0, 0),
            imagecolorallocate($im, 255, 128, 0),
            imagecolorallocate($im, 255, 208, 0),
            imagecolorallocate($im, 98, 186, 245),
        );

        //填充背景色
        imagefill($im, 0, 0, $bgc);

        //随机获取数字
        $verify = "";
        while (strlen($verify) < $len) {
            $i = strlen($verify);
            $random = $str[rand(0, strlen($str))];
            $verify .= $random;

            //绘制背景文字
            imagestring($im, 6, ($i*10)+3, rand(0,6), $random, $bgtxt);
            //绘制主文字信息
            imagestring($im, 6, ($i*10)+3, rand(0,6), $random, $colors[rand(0, count($colors)-1)]);
        }

        //添加随机杂色
        for($i=0; $i<100; $i++) {
            $color = imagecolorallocate($im, rand(50,220), rand(50,220), rand(50,220));
            imagesetpixel($im, rand(0,70), rand(0,20), $color);
        }

        //将验证码存入$_SESSION中
        $_SESSION["verify"] = $verify;

        //输出图片并释放缓存
        header("Content-type: image/png");
        imagepng($im);
        imagedestroy($im);
    }
}
// 使用方法
$verify = new Verify;
$verify->show();

 

© 著作权归作者所有

高处胜寒

高处胜寒

粉丝 9
博文 213
码字总数 148499
作品 0
西安
程序员
私信 提问
PHP 画图应用 验证码 柱状图

Title: PHP 画图应用 验证码 柱状图 Author: MoreWindows Blog: http://blog.csdn.net/MoreWindows KeyWord: PHP 验证码 柱状图 imagefilledarc 阅读本文之前,推荐先参阅姊妹篇《PHP 画图基...

彭博
2012/04/12
126
0
PHP 画图应用 验证码 柱状图

Title: PHP 画图应用 验证码 柱状图 Author: MoreWindows Blog: http://blog.csdn.net/MoreWindows KeyWord: PHP 验证码 柱状图 imagefilledarc 阅读本文之前,推荐先参阅姊妹篇《PHP 画图基...

长平狐
2012/12/10
131
0
一个漂亮的php验证码类(分享)

//验证码类 class ValidateCode { private $charset = 'abcdefghkmnprstuvwxyzABCDEFGHKMNPRSTUVWXYZ23456789';//随机因子 private $code;//验证码 private $codelen = 4;//验证码长度 priv......

zyt_1978
2016/09/29
22
0
自己写了一个php验证码类,验证码可以正常显示,说明已经生成,但是通过属性值获取不到验证码,为空。

/* 问题:验证码可以正常显示,说明验证码已经生成(分别是$code和$gbkcode),但是通过属性值获取不到验证码,为空。 return $this->code; 为空? 求解............. */ width=$width; $thi...

刘伟伟
2012/07/27
1K
2
Minho/php-captcha

php-captcha 简单的php验证码库。 PHP生成验证码图片 PHP生成验证码的原理:使用PHP的GD库,生成一张带验证码的图片,并将验证码保存在Session中。PHP生成验证码的大致流程有: 1、产生一张p...

Minho
2017/01/15
0
0

没有更多内容

加载失败,请刷新页面

加载更多

手写RPC框架指北另送贴心注释代码一套

Angular8正式发布了,Java13再过几个月也要发布了,技术迭代这么快,框架的复杂度越来越大,但是原理是基本不变的。所以沉下心看清代码本质很重要,这次给大家带来的是手写RPC框架。 完整代码...

全菜工程师小辉
19分钟前
3
0
【Java】开发收货

简介 谨以此篇,记载开发过程中的一些tips。 编译器 【Shift + F6】可实现变量的联动修改。

Areya
35分钟前
5
0
DOM官方定义

DOM Document Object Model 文档对象模型 DOM的官方定义:W3C的DOM,可以使程序或者脚本(JS或AS\JScript),动态的访问或者操作文档的内容、结构、样式。 DOM只是一个标准,操作网页的标准。...

前端老手
41分钟前
6
0
IT兄弟连 HTML5教程 HTML5的学习线路图 第一阶段学习网页制作

学习HTML5技术可并不是简单学会几个新增的标签而已,HTML5现在可以说是前端所有技术的代名词。需要学习的语言和工具不仅多,对于刚接触他们的新人会感觉很乱。另外,前端开发也会细分很多个开...

老码农的一亩三分地
42分钟前
6
0
可见性有序性,Happens-before来搞定

写在前面 上一篇文章并发 Bug 之源有三,请睁大眼睛看清它们 谈到了可见性/原子性/有序性三个问题,这些问题通常违背我们的直觉和思考模式,也就导致了很多并发 Bug 为了解决 CPU,内存,IO ...

tan日拱一兵
58分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部