当前位置: 首页 > 图文教程 > 网络编程 > PHP > php 生成随机验证码图片代码

PHP
让你同时上传 1000 个文件
一个个人网页自动化生成系统
PHP教程.经验技巧(中)
PHP教程.经验技巧(下)
php优化及高效提速问题小结
一个简单的php在线端口扫描器
浅淡PHP生成HTML的思路
正则表达式使用详解
用PHP制作饼图调查表
PHP和MySQL开发的8个技巧
SSI使用详解(二)
PHP中实现面向对象编程
PHP中通过Web执行C/C++应用程序
MySQL数据库基础教程
一个对数据库进行操作的程序
PHP控制语句
PHP编程的十个高级技巧
高级PHP V5 对象研究
使用 PHP 5.0创建图形的巧妙方法
理解PHP中的MVC编程之MVC框架简介

PHP 中的 php 生成随机验证码图片代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-02-27   浏览: 201 ::
收藏到网摘: n/a

一个最简单的生成随机验证码图片的例子

复制代码 代码如下:

<?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);
}
};
?>