php 数学运算验证码实现代码


Posted in PHP onOctober 11, 2009
<?php 
//------------------------------------- 
// 文件说明:数学运算验证码 
// 文件作者:Jesse Lee 
// 最后更新:2008-09-07 
//------------------------------------- session_start(); 
$sessionvar = 'vdcode'; //Session变量名称 
$width = 150; //图像宽度 
$height = 20; //图像高度 
$operator = '+-*'; //运算符 
$code = array(); 
$code[] = mt_rand(1,9); 
$code[] = $operator{mt_rand(0,2)}; 
$code[] = mt_rand(1,9); 
$code[] = $operator{mt_rand(0,2)}; 
$code[] = mt_rand(1,9); 
$codestr = implode('',$code); 
eval("\$result = ".implode('',$code).";"); 
$code[] = '='; 
$_SESSION[$sessionvar] = $result; 
$img = ImageCreate($width,$height); 
ImageColorAllocate($img, mt_rand(230,250), mt_rand(230,250), mt_rand(230,250)); 
$color = ImageColorAllocate($img, 0, 0, 0); 
$offset = 0; 
foreach ($code as $char) { 
$offset += 20; 
$txtcolor = ImageColorAllocate($img, mt_rand(0,255), mt_rand(0,150), mt_rand(0,255)); 
ImageChar($img, mt_rand(3,5), $offset, mt_rand(1,5), $char, $txtcolor); 
} 
for ($i=0; $i<100; $i++) { 
$pxcolor = ImageColorAllocate($img, mt_rand(0,255), mt_rand(0,255), mt_rand(0,255)); 
ImageSetPixel($img, mt_rand(0,$width), mt_rand(0,$height), $pxcolor); 
} 
header('Content-type: image/png'); 
ImagePng($img); 
?>
PHP 相关文章推荐
php AJAX实例根据邮编自动完成地址信息
Nov 23 PHP
php 随机记录mysql rand()造成CPU 100%的解决办法
May 18 PHP
php入门学习知识点二 PHP简单的分页过程与原理
Jul 14 PHP
PHP判断远程url是否有效的几种方法小结
Oct 08 PHP
PHP代码审核的详细介绍
Jun 13 PHP
Linux环境下搭建php开发环境的操作步骤
Jun 17 PHP
Linux中用PHP判断程序运行状态的2个方法
May 04 PHP
PHP统计目录中文件以及目录中目录大小的方法
Jan 09 PHP
Yii2 RESTful中api的使用及开发实例详解
Jul 06 PHP
PHP 接入支付宝即时到账功能
Sep 18 PHP
深入研究PHP中的preg_replace和代码执行
Aug 15 PHP
Yii2框架中一些折磨人的坑
Dec 15 PHP
用mysql触发器自动更新memcache的实现代码
Oct 11 #PHP
基于OpenCV的PHP图像人脸识别技术
Oct 11 #PHP
PHP 身份验证方面的函数
Oct 11 #PHP
使用zend studio for eclipse不能激活代码提示功能的解决办法
Oct 11 #PHP
关于页面优化和伪静态
Oct 11 #PHP
PHP iconv 函数转gb2312的bug解决方法
Oct 11 #PHP
Ha0k 0.3 PHP 网页木马修改版
Oct 11 #PHP
You might like
PHP伪静态写法附代码
2008/06/20 PHP
php输入流php://input使用示例(php发送图片流到服务器)
2013/12/25 PHP
redis查看连接数及php模拟并发创建redis连接的方法
2016/12/15 PHP
详解php用curl调用接口方法,get和post两种方式
2017/01/13 PHP
JavaScript replace(rgExp,fn)正则替换的用法
2010/03/04 Javascript
juqery 学习之三 选择器 子元素与表单
2010/11/25 Javascript
js调用浏览器打印模块实现点击按钮触发自定义函数
2014/03/21 Javascript
jQuery实现菜单感应鼠标滑动动画效果的方法
2015/02/28 Javascript
基于jQuery实现返回顶部实例代码
2016/01/01 Javascript
JS中的forEach、$.each、map方法推荐
2016/04/05 Javascript
最常见的左侧分类菜单栏jQuery实现代码
2016/11/28 Javascript
JavaScript 详解预编译原理
2017/01/22 Javascript
JavaScript Date 知识浅析
2017/01/29 Javascript
jquery实现下拉框左右选择功能
2017/02/21 Javascript
100行代码理解和分析vue2.0响应式架构
2017/03/09 Javascript
jQuery Validate 无法验证 chosen-select元素的解决方法
2017/05/17 jQuery
LayerClose弹窗关闭刷新方法
2018/08/17 Javascript
Vue实战教程之仿肯德基宅急送App
2019/07/19 Javascript
nuxt 自定义 auth 中间件实现令牌的持久化操作
2020/11/05 Javascript
python条件和循环的使用方法
2013/11/01 Python
python sys模块sys.path使用方法示例
2013/12/04 Python
python原始套接字编程示例分享
2014/02/21 Python
Python的Flask框架中web表单的教程
2015/04/20 Python
python清除字符串里非字母字符的方法
2015/07/02 Python
Python学习小技巧之列表项的推导式与过滤操作
2017/05/20 Python
Python turtle库的画笔控制说明
2020/06/28 Python
matplotlib 画双轴子图无法显示x轴的解决方法
2020/07/27 Python
解决c++调用python中文乱码问题
2020/07/29 Python
CSS3转换功能transform主要属性值分析及实现分享
2012/05/06 HTML / CSS
美国职棒大联盟官方网上商店:MLBShop.com
2017/11/12 全球购物
2014信息技术专业毕业生自我评价
2014/01/17 职场文书
优秀辅导员事迹材料
2014/02/16 职场文书
电子商务专业求职信
2014/07/10 职场文书
践行三严三实心得体会
2014/10/13 职场文书
活动经费申请报告
2015/05/15 职场文书
解决numpy数组互换两行及赋值的问题
2021/04/17 Python