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中__get()和__set()的用法实例详解
Jun 04 PHP
解析php curl_setopt 函数的相关应用及介绍
Jun 17 PHP
免费的ip数据库淘宝IP地址库简介和PHP调用实例
Apr 08 PHP
PHP类中的魔术方法(Magic Method)简明总结
Jul 08 PHP
php常用文件操作函数汇总
Nov 22 PHP
php绘制一条弧线的方法
Jan 24 PHP
php实现mysql数据库连接操作及用户管理
Nov 08 PHP
php PDO异常处理详解
Nov 20 PHP
PHP读取Excel类文件
May 15 PHP
PHP 记录访客的浏览信息方法
Jan 29 PHP
YII2框架中actions的作用与使用方法示例
Mar 13 PHP
php 解析非标准json、非规范json
Apr 01 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 fsockopen伪造post与get方法的详解
2013/06/14 PHP
PHP微信开发之微信录音临时转永久存储
2018/01/26 PHP
$()JS小技巧
2007/07/21 Javascript
jQuery1.4.2与老版本json格式兼容的解决方法
2011/02/12 Javascript
用jquery模仿的a的title属性(兼容ie6/7)
2013/01/21 Javascript
js/jquery解析json和数组格式的方法详解
2014/01/09 Javascript
JavaScript设计模式之代理模式介绍
2014/12/28 Javascript
Javascript数据结构与算法之列表详解
2015/03/12 Javascript
JavaScript正则表达式之multiline属性的应用
2015/06/16 Javascript
JS+CSS简单树形菜单实现方法
2015/09/12 Javascript
基于BootStrap实现局部刷新分页实例代码
2016/08/08 Javascript
简单的js表格操作
2016/09/24 Javascript
微信小程序 canvas API详解及实例代码
2016/10/08 Javascript
Vue实现左右菜单联动实现代码
2018/08/12 Javascript
解决Js先触发失去焦点事件再执行点击事件的问题
2018/08/30 Javascript
微信小程序之下拉列表实现方法解析(附完整源码)
2019/08/23 Javascript
如何通过JS实现转码与解码
2020/02/21 Javascript
js+css3实现炫酷时钟
2020/08/18 Javascript
vue脚手架项目创建步骤详解
2021/03/02 Vue.js
[00:36]DOTA2上海特级锦标赛 LGD战队宣传片
2016/03/04 DOTA
python中查找excel某一列的重复数据 剔除之后打印
2013/02/10 Python
python构造icmp echo请求和实现网络探测器功能代码分享
2014/01/10 Python
简介Python中用于处理字符串的center()方法
2015/05/18 Python
在Python程序中操作文件之isatty()方法的使用教程
2015/05/24 Python
Python模拟用户登录验证
2017/09/11 Python
快速了解Python相对导入
2018/01/12 Python
Python文本处理之按行处理大文件的方法
2018/04/09 Python
Python去除字符串前后空格的几种方法
2019/03/04 Python
python RSA加密的示例
2020/12/09 Python
html5中地理位置定位api接口开发应用小结
2013/01/04 HTML / CSS
精美的手工家居和生活用品:Nkuku
2019/11/01 全球购物
2013年办公室秘书的个人自我鉴定
2013/10/24 职场文书
生产厂长岗位职责
2014/02/21 职场文书
高效课堂教学反思
2016/02/24 职场文书
2016见义勇为事迹材料汇总
2016/03/01 职场文书
mysql left join快速转inner join的过程
2021/06/30 MySQL