php 生成随机验证码图片代码

 更新时间:2010年02月08日 08:52:59   作者:  
一个最简单的生成随机验证码图片的例子

复制代码 代码如下:

<?php
/** 默认首页 **/
class DefaultController extends AppController
{
public function index() {
$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中
sess("verify", $verify);

//输出图片并释放缓存
header('Content-type: image/png');
imagepng($im);
imagedestroy($im);
}
};
?>

相关文章

  • php压缩文件夹最新版

    php压缩文件夹最新版

    这篇文章主要为大家详细介绍了php压缩文件夹的最新版代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-07-07
  • php数组函数序列之array_flip() 将数组键名与值对调

    php数组函数序列之array_flip() 将数组键名与值对调

    array_flip() 函数将使数组的键名与其相应值调换,即键名变成了值,而值变成了键名
    2011-11-11
  • PHP闭包函数传参及使用外部变量的方法

    PHP闭包函数传参及使用外部变量的方法

    这篇文章主要介绍了PHP闭包函数传参及使用外部变量的方法,基于Laravel框架分析了PHP闭包函数传参及外部变量相关使用技巧,需要的朋友可以参考下
    2016-03-03
  • PHP 利用Mail_MimeDecode类提取邮件信息示例

    PHP 利用Mail_MimeDecode类提取邮件信息示例

    重点为one_mail函数。利用Mail_mimeDecode类从邮件中提取邮件头和邮件正文,具体实现如下
    2014-01-01
  • PHP+Ajax简单get验证操作示例

    PHP+Ajax简单get验证操作示例

    这篇文章主要介绍了PHP+Ajax简单get验证操作,涉及php结合ajax无刷新提交验证相关操作技巧,需要的朋友可以参考下
    2019-03-03
  • php 函数中使用static的说明

    php 函数中使用static的说明

    看PW源码的时候发现setHeader()函数中使用static关键字,很奇怪,以前也没这样用过。static用在函数里面,声明一次变量后,如果再次调用这个函数将会在初始值延续,如$sapi这里将累加
    2012-06-06
  • php实现httpRequest的方法

    php实现httpRequest的方法

    这篇文章主要介绍了php实现httpRequest的方法,涉及php操作http的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-03-03
  • PHP之Swoole学习安装教程

    PHP之Swoole学习安装教程

    这篇文章主要介绍了PHP之Swoole学习安装教程,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-09-09
  • php实现读取超大文件的方法

    php实现读取超大文件的方法

    这篇文章主要介绍了php实现读取超大文件的方法,需要的朋友可以参考下
    2014-07-07
  • PHP预定义接口——Iterator用法示例

    PHP预定义接口——Iterator用法示例

    这篇文章主要介绍了PHP预定义接口——Iterator用法,结合实例形式分析了PHP Iterator(迭代器)接口相关原理、定义与使用方法,需要的朋友可以参考下
    2020-06-06

最新评论