基于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 相关文章推荐
php Memcache 中实现消息队列
Nov 24 PHP
用js进行url编码后用php反解以及用php实现js的escape功能函数总结
Feb 08 PHP
PHP的变量总结 新手推荐
Apr 18 PHP
解决file_get_contents无法请求https连接的方法
Dec 17 PHP
PHP中实现生成静态文件的方法缓解服务器压力
Jan 07 PHP
Session的工作机制详解和安全性问题(PHP实例讲解)
Apr 10 PHP
php将HTML表格每行每列转为数组实现采集表格数据的方法
Apr 03 PHP
WordPress中查询文章的循环Loop结构及用法分析
Dec 17 PHP
Symfony2学习笔记之控制器用法详解
Mar 17 PHP
PHP函数import_request_variables()用法分析
Apr 02 PHP
php实用代码片段整理
Nov 12 PHP
在Laravel的Model层做数据缓存的实现
Sep 26 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
人族 TERRAN 概述
2020/03/14 星际争霸
php 特殊字符处理函数
2008/09/05 PHP
PHP单链表的实现代码
2016/07/05 PHP
Yii框架实现记录日志到自定义文件的方法
2017/05/23 PHP
js实现的仿新浪微博完美的时间组件升级版
2011/12/20 Javascript
JavaScript代码简单实现求杨辉三角给定行的最大值
2013/10/29 Javascript
Firefox中通过JavaScript复制数据到剪贴板(Copy to Clipboard 跨浏览器版)
2013/11/22 Javascript
判断JS对象是否拥有某种属性的两种方式
2013/12/02 Javascript
使用jquery实现以post打开新窗口
2014/03/19 Javascript
jQuery控制网页打印指定区域的方法
2015/04/07 Javascript
JS转换HTML转义符的方法
2016/08/24 Javascript
javascript鼠标跟随运动3种效果(眼球效果,苹果菜单,方向跟随)
2016/10/27 Javascript
Ionic2系列之使用DeepLinker实现指定页面URL
2016/11/21 Javascript
HTML5实现微信拍摄上传照片功能
2017/04/21 Javascript
JS实现的文字间歇循环滚动效果完整示例
2018/02/13 Javascript
浅谈Vue下使用百度地图的简易方法
2018/03/23 Javascript
用vue2.0实现点击选中active其他选项互斥的效果
2018/04/12 Javascript
node.js利用socket.io实现多人在线匹配联机五子棋
2018/05/31 Javascript
vue.js+ElementUI实现进度条提示密码强度效果
2020/01/18 Javascript
vue大型项目之分模块运行/打包的实现
2020/09/21 Javascript
打开电脑上的QQ的python代码
2013/02/10 Python
快速解决PyCharm无法引用matplotlib的问题
2018/05/24 Python
基于Python实现ComicReaper漫画自动爬取脚本过程解析
2019/11/11 Python
Python Tensor FLow简单使用方法实例详解
2020/01/14 Python
Gretna Green中文官网:苏格兰格林小镇
2019/10/16 全球购物
行政管理专业求职信
2014/07/06 职场文书
售后客服个人自我评价
2014/09/14 职场文书
辩护词格式
2015/05/22 职场文书
首席执行官观后感
2015/06/03 职场文书
卢旺达饭店观后感
2015/06/05 职场文书
高中升旗仪式主持词
2015/07/03 职场文书
2016民族团结先进个人事迹材料
2016/02/26 职场文书
2019运动会广播加油稿汇总
2019/08/21 职场文书
MySQL数据库10秒内插入百万条数据的实现
2021/11/01 MySQL
详解Python如何批量采集京东商品数据流程
2022/01/22 Python
5个pandas调用函数的方法让数据处理更加灵活自如
2022/04/24 Python