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 相关文章推荐
一个用于mysql的数据库抽象层函数库
Oct 09 PHP
一个连接两个不同MYSQL数据库的PHP程序
Oct 09 PHP
php判断字符以及字符串的包含方法属性
Aug 30 PHP
mysql From_unixtime及UNIX_TIMESTAMP及DATE_FORMAT日期函数
Mar 21 PHP
ThinkPHP自动验证失败的解决方法
Jun 09 PHP
与文件上传有关的php配置参数总结
Jun 14 PHP
浅谈php和.net的区别
Sep 28 PHP
PHP遍历XML文档所有节点的方法
Mar 12 PHP
php实现微信公众号主动推送消息
Dec 31 PHP
php抽奖概率算法(刮刮卡,大转盘)
Apr 17 PHP
学习PHP Cookie处理函数
Aug 09 PHP
PHP中让json_encode不自动转义斜杠“/”的方法
Feb 28 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
追求程序速度,而不是编程的速度
2008/04/23 PHP
基于header的一些常用指令详解
2013/06/06 PHP
Codeigniter购物车类不能添加中文的解决方法
2014/11/29 PHP
你应该知道PHP浮点数知识
2015/05/13 PHP
Laravel学习教程之路由模块
2017/08/18 PHP
基于jQuery实现的Ajax 验证用户名是否存在的实现代码
2011/04/06 Javascript
Javascript selection的兼容性写法介绍
2013/12/20 Javascript
关于img的href和src取变量及赋值的方法
2014/04/28 Javascript
javascript中的nextSibling使用陷(da)阱(keng)
2014/05/05 Javascript
一个支持任意尺寸的图片上下左右滑动效果
2014/08/24 Javascript
12种JavaScript常用的MVC框架比较分析
2015/11/16 Javascript
深入理解jquery中的事件与动画
2016/05/24 Javascript
JQuery 设置checkbox值二次无效的解决方法
2016/07/22 Javascript
微信小程序 页面跳转传值实现代码
2017/07/27 Javascript
获取layer.open弹出层的返回值方法
2018/08/20 Javascript
Vue.js实现表格渲染的方法
2018/09/07 Javascript
微信公众号平台接口开发 获取微信服务器IP地址方法解析
2019/08/14 Javascript
swiper4实现移动端导航切换
2020/10/16 Javascript
Vue项目中使用jsonp抓取跨域数据的方法
2019/11/10 Javascript
详解python上传文件和字符到PHP服务器
2017/11/24 Python
Python实现从log日志中提取ip的方法【正则提取】
2018/03/31 Python
python3+PyQt5重新实现QT事件处理程序
2018/04/19 Python
Pandas的read_csv函数参数分析详解
2019/07/02 Python
用Python从0开始实现一个中文拼音输入法的思路详解
2019/07/20 Python
运用PyTorch动手搭建一个共享单车预测器
2019/08/06 Python
django 数据库 get_or_create函数返回值是tuple的问题
2020/05/15 Python
Python confluent kafka客户端配置kerberos认证流程详解
2020/10/12 Python
美国花园雕像和家居装饰网上商店:Design Toscano
2019/03/09 全球购物
Made in Design意大利:现代家具、名家灯具和装饰
2020/10/27 全球购物
银行简历自我评价
2014/02/11 职场文书
火锅店的活动方案
2014/08/15 职场文书
2014年乡镇纪委工作总结
2014/12/19 职场文书
安全主题班会教案
2015/08/12 职场文书
如何利用map实现Nginx允许多个域名跨域
2021/03/31 Servers
简述python四种分词工具,盘点哪个更好用?
2021/04/13 Python
JS中forEach()、map()、every()、some()和filter()的用法
2022/05/11 Javascript