基于php验证码函数的使用示例


Posted in PHP onMay 03, 2013
function _code($_code_length = 4, $_width = 75, $_height = 25){
    for($i=0;$i<$_code_length;$i++){
        $_nmsg .= dechex(mt_rand(0,15));
    }
    $_SESSION["code"] = $_nmsg;
    $_img = imagecreatetruecolor($_width, $_height);
    $_white = imagecolorallocate($_img, 250, 250, 250);
    imagefill($_img, 0, 0, $_white);
    $_gray = imagecolorallocate($_img, 196, 196, 196);
    imagerectangle($_img, 0, 0, $_width-1, $_height-1, $_gray);
    for ($i=0; $i < 6; $i++) { 
        $_md_color = imagecolorallocate($_img, mt_rand(200,255), mt_rand(200,255), mt_rand(200,255));
        imageline($_img, mt_rand(0,$_width), mt_rand(0, $_height),mt_rand(0,$_width), mt_rand(0, $_height), $_md_color);
    }
    for ($i=0; $i < 50; $i++) { 
        $_md_color = imagecolorallocate($_img, mt_rand(200,255), mt_rand(200,255), mt_rand(200,255));
        imagestring($_img, 1, mt_rand(1,$_width-5), mt_rand(1, $_height-5), "*", $_md_color);
    }
    for ($i=0; $i < $_code_length ; $i++) { 
        $_md_color = imagecolorallocate($_img, mt_rand(0,102), mt_rand(0,102), mt_rand(0,102));
        imagestring($_img, 5, $i * $_width/$_code_length+ mt_rand(1, 10), mt_rand(1, $_height/2), $_SESSION["code"][$i], $_md_color);
    }
    header("Content-Type:image/png");
    imagepng($_img);
    imagedestroy($_img);
}
PHP 相关文章推荐
建立文件交换功能的脚本(二)
Oct 09 PHP
判断Keep-Alive模式的HTTP请求的结束的实现代码
Aug 06 PHP
PHP中去除换行解决办法小结(PHP_EOL)
Nov 27 PHP
探讨fckeditor在Php中的配置详解
Jun 08 PHP
PHP中绘制图像的一些函数总结
Nov 19 PHP
php和editplus正则表达式去除空白行
Apr 17 PHP
php实现图片等比例缩放代码
Jul 23 PHP
PHP模糊查询的实现方法(推荐)
Sep 06 PHP
php版微信公众平台入门教程之开发者认证的方法
Sep 26 PHP
php 根据URL下载远程图片、压缩包、pdf等文件到本地
Jul 26 PHP
修改Laravel自带的认证系统的User类的命名空间的步骤
Oct 15 PHP
解析laravel使用workerman用户交互、服务器交互
Apr 28 PHP
基于MySQL体系结构的分析
May 02 #PHP
PHP程序级守护进程的实现与优化的使用概述
May 02 #PHP
基于Zookeeper的使用详解
May 02 #PHP
关于尾递归的使用详解
May 02 #PHP
基于Zend的Config机制的应用分析
May 02 #PHP
Zend的Registry机制的使用说明
May 02 #PHP
Zend的MVC机制使用分析(二)
May 02 #PHP
You might like
静态图片的十一种滤镜效果--不支持Ie7及非IE浏览器。
2007/03/06 Javascript
通过DOM脚本去设置样式信息
2010/09/19 Javascript
浅谈Javascript嵌套函数及闭包
2010/11/09 Javascript
在iframe里的页面编写js,实现在父窗口上创建动画效果展开和收缩的div(不变动iframe父窗口代码)
2011/12/20 Javascript
JQuery的Ajax请求实现局部刷新的简单实例
2014/02/11 Javascript
jQuery获取(选中)单选,复选框,下拉框中的值
2014/02/21 Javascript
轻松实现jquery手风琴效果
2016/01/14 Javascript
实例讲解JS中setTimeout()的用法
2016/01/28 Javascript
js+css3制作时钟特效
2016/10/16 Javascript
nodejs文件夹深层复制功能
2019/09/03 NodeJs
vue用BMap百度地图实现即时搜索功能
2019/09/26 Javascript
JS实现进度条动态加载特效
2020/03/25 Javascript
如何构建 vue-ssr 项目的方法步骤
2020/08/04 Javascript
SpringBoot+Vue开发之Login校验规则、实现登录和重置事件
2020/10/19 Javascript
VSCode下好用的Python插件及配置
2018/04/06 Python
对pandas进行数据预处理的实例讲解
2018/04/20 Python
python3+PyQt5实现自定义流体混合窗口部件
2018/04/24 Python
PyGame贪吃蛇的实现代码示例
2018/11/21 Python
Java ExcutorService优雅关闭方式解析
2020/05/30 Python
详解python实现可视化的MD5、sha256哈希加密小工具
2020/09/14 Python
Python中过滤字符串列表的方法
2020/12/22 Python
python日志通过不同的等级打印不同的颜色(示例代码)
2021/01/13 Python
使用CSS3制作倾斜导航条和毛玻璃效果
2017/09/12 HTML / CSS
html5仿支付宝密码框的实现代码
2017/09/06 HTML / CSS
HTML5通过navigator.mediaDevices.getUserMedia调用手机摄像头问题
2020/04/27 HTML / CSS
加拿大最大的五金、家居装修和园艺产品商店:RONA
2017/01/27 全球购物
餐厅总厨求职信
2014/03/04 职场文书
幸福家庭标语
2014/06/27 职场文书
镇副书记专题民主生活会对照检查材料思想汇报
2014/10/02 职场文书
2014年党建工作总结
2014/11/11 职场文书
高考升学宴答谢词
2015/01/20 职场文书
大学生活委员竞选稿
2015/11/21 职场文书
百年校庆宣传标语口号
2015/12/26 职场文书
浏览器常用基本操作之python3+selenium4自动化测试(基础篇3)
2021/05/21 Python
css布局巧妙技巧之css三角示例的运用
2022/03/16 HTML / CSS