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


Posted in PHP onFebruary 08, 2010
<?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 相关文章推荐
PHP5.0正式发布 不完全兼容PHP4 新增多项功能
Oct 09 PHP
php,不用COM,生成excel文件
Oct 09 PHP
一步一步学习PHP(3) php 函数
Feb 15 PHP
str_replace只替换一次字符串的方法
Apr 09 PHP
基于php iconv函数的使用详解
Jun 09 PHP
PHP swfupload图片上传的实例代码
Sep 30 PHP
thinkphp实现面包屑导航(当前位置)例子分享
May 10 PHP
图解找出PHP配置文件php.ini的路径的方法
Aug 20 PHP
PHP中使用GD库创建圆形饼图的例子
Nov 19 PHP
PHP中list方法用法示例
Dec 01 PHP
PHP设计模式之策略模式原理与用法实例分析
Apr 04 PHP
Thinkphp 3.2框架使用Redis的方法详解
Oct 24 PHP
劣质的PHP代码简化
Feb 08 #PHP
php下把数组保存为文件格式的实例应用
Feb 08 #PHP
php date与gmdate的获取日期的区别
Feb 08 #PHP
php 获取当前访问的url文件名的方法小结
Feb 08 #PHP
用php实现的下载css文件中的图片的代码
Feb 08 #PHP
php不用内置函数对数组排序的两个算法代码
Feb 08 #PHP
Linux下将excel数据导入到mssql数据库中的方法
Feb 08 #PHP
You might like
通过文字传递创建的图形按钮
2006/10/09 PHP
php类中private属性继承问题分析
2012/11/01 PHP
ThinkPHP 表单自动验证运用示例
2014/10/13 PHP
PHP使用CURL实现多线程抓取网页
2015/04/30 PHP
jQuery学习笔记 操作jQuery对象 CSS处理
2012/09/19 Javascript
JS模块与命名空间的介绍
2013/03/22 Javascript
关闭浏览器时提示onbeforeunload事件
2013/12/25 Javascript
javascript跨域的4种方法和原理详解
2014/04/08 Javascript
简单对比分析JavaScript中的apply,call与this的使用
2015/12/04 Javascript
基于jQuery实现交互体验社会化分享代码附源码下载
2016/01/04 Javascript
JavaScript截取、切割字符串的技巧
2016/01/07 Javascript
详解Angularjs filter过滤器
2016/02/06 Javascript
浅谈时钟的生成(js手写简洁代码)
2016/08/20 Javascript
jQuery控制控件文本的长度的操作方法
2016/12/05 Javascript
微信小程序之多文件下载的简单封装示例
2018/01/29 Javascript
Javascript 实现 Excel 导入生成图表功能
2018/10/22 Javascript
详解基于Vue,Nginx的前后端不分离部署教程
2018/12/04 Javascript
利用vue重构有赞商城的思路以及总结整理
2019/02/21 Javascript
ES6数组与对象的解构赋值详解
2019/06/14 Javascript
在HTML中使用JavaScript的两种方法
2020/12/24 Javascript
[11:27]《一刀刀一天》之DOTA全时刻20:TI4总奖金突破920W TS赛事分析
2014/06/18 DOTA
[01:26]神话结束了,却也刚刚开始——DOTA2新英雄玛尔斯驾临战场
2019/03/10 DOTA
讲解Python中if语句的嵌套用法
2015/05/14 Python
5款非常棒的Python工具
2018/01/05 Python
Python删除n行后的其他行方法
2019/01/28 Python
pygame实现弹球游戏
2020/04/14 Python
python针对Oracle常见查询操作实例分析
2020/04/30 Python
python math模块的基本使用教程
2021/01/16 Python
纯CSS打造(无图像无js)的非常流行的讲话(语音)气泡效果
2012/12/28 HTML / CSS
html5使用canvas绘制一张图片
2014/12/15 HTML / CSS
THE OUTNET英国官网:国际设计师品牌折扣网站
2016/08/14 全球购物
有创意的广告词
2014/03/18 职场文书
优秀电子工程系毕业生求职信
2014/05/24 职场文书
乡镇干部先进性教育活动个人整改措施
2014/09/16 职场文书
2014年档案管理员工作总结
2014/12/01 职场文书
实习工作表现评语
2014/12/31 职场文书