php实现加减法验证码代码


Posted in PHP onFebruary 14, 2014
<?php
/*图片验证码文件,加减计算方式*/
class ImageCode{
 private $Jiashu  = 0;        //加数或者减数
 private $JianShu = 0;        //被加数或者被减数
 private $YunSuan = '';       //运算符
 private $DeShu   = 0;        //得数
 private $String  = '';       //字符串样式
 private $Img;                //图片对象
 private $Width   = 100;      //图片宽度
 private $Height  = 50;       //图片高度
 private $Ttf     = 'Num.ttf';//字体文件
 private $Session = 'code';   //Session变量
 private function JiaShu(){
  header('Content-type:image/png');
  $this -> Jiashu  = rand(1, 10);
  $this -> JianShu = rand(1, 10);
  $this -> YunSuan= $this -> Jiashu > $this -> JianShu ? '-' : '+';
  $this -> DeShu   = $this -> Jiashu > $this -> JianShu ? $this -> Jiashu - $this -> JianShu : $this -> Jiashu + $this -> JianShu;
 }
 public function Show( $W = 100, $H = 50, $T = 'Num.ttf', $Code = 'code' ){
  $this -> JiaShu();
  $this -> String = $this -> Jiashu . $this -> YunSuan . $this -> JianShu . '= ? ';
  $this -> Width  = $W;
  $this -> Height = $H;
  $this -> Ttf    = $T;
  $this -> Session= $Code;
  session_start();
  $_SESSION[$this -> Session] = $this -> DeShu;
  $this -> Images();
 }
 private function Images(){
  $this -> Img = imagecreate($this -> Width, $this -> Height);
  $background_color = imagecolorallocate ($this -> Img, 255, 255, 255);
  imagecolortransparent($this -> Img, $background_color);
        imagettftext($this -> Img, 14, 0, 1, 20, imagecolorallocate ($this -> Img, 0, 0, 0), $this -> Ttf, $this -> String );
  $this -> EchoImages();
 }
 private function EchoImages(){
  imagepng($this -> Img);
  imagedestroy($this -> Img);
 }
}
$ImageCode = new ImageCode;
$ImageCode -> Show(130, 35, 'Num.ttf', 'code');
PHP 相关文章推荐
攻克CakePHP系列一 连接MySQL数据库
Oct 22 PHP
如何使用Strace调试工具
Jun 03 PHP
PHP操作Memcache实例介绍
Jun 14 PHP
浅析php中抽象类和接口的概念以及区别
Jun 27 PHP
php读取文件内容的三种可行方法示例介绍
Feb 08 PHP
php实现微信公众平台账号自定义菜单类
Oct 11 PHP
PHP正则表达式之捕获组与非捕获组
Nov 06 PHP
php版微信公众平台开发之验证步骤实例详解
Sep 23 PHP
thinkPHP商城公告功能开发问题分析
Dec 01 PHP
PHP迭代与递归实现无限级分类
Aug 28 PHP
Ajax+PHP实现的分类列表框功能示例
Feb 11 PHP
php中try catch捕获异常实例详解
Aug 06 PHP
php实现mysql数据库操作类分享
Feb 14 #PHP
php将session放入memcached的设置方法
Feb 14 #PHP
smarty获得当前url的方法分享
Feb 14 #PHP
smarty模板中拼接字符串的方法
Feb 14 #PHP
php的sprintf函数的用法 控制浮点数格式
Feb 14 #PHP
PHP中$_FILES的使用方法及注意事项说明
Feb 14 #PHP
php $_SERVER windows系统与linux系统下的区别说明
Feb 14 #PHP
You might like
PHP函数篇之掌握ord()与chr()函数应用
2011/12/05 PHP
解析dedeCMS验证码的实现代码
2013/06/07 PHP
PHP封装的一个支持HTML、JS、PHP重定向的多功能跳转函数
2014/06/19 PHP
php写的AES加密解密类分享
2014/06/20 PHP
php定时执行任务设置详解
2015/02/06 PHP
CI配置多数据库访问的方法
2016/03/28 PHP
PHP实现的redis主从数据库状态检测功能示例
2017/07/20 PHP
tp5.1 实现setInc字段自动加1
2019/10/18 PHP
JavaScript将取代AppleScript?
2014/09/18 Javascript
jquery获取当前日期的方法
2015/01/14 Javascript
JS实现复制内容到剪贴板功能兼容所有浏览器(推荐)
2016/06/17 Javascript
javascript动画之模拟拖拽效果篇
2016/09/26 Javascript
vue双向绑定简要分析
2017/03/23 Javascript
Vue.js tab实现选项卡切换
2017/05/16 Javascript
jquery.masonry瀑布流效果
2017/05/25 jQuery
JS点击图片弹出文件选择框并覆盖原图功能的实现代码
2017/08/25 Javascript
微信小程序 input输入及动态设置按钮的实现
2017/10/27 Javascript
用WebStorm进行Angularjs 2开发(环境篇:Windows 10,Angular-cli方式)
2018/12/05 Javascript
JavaScript中交换值的10种方法总结
2020/08/18 Javascript
Python中的作用域规则详解
2015/01/30 Python
Diango + uwsgi + nginx项目部署的全过程(可外网访问)
2018/04/22 Python
利用Python进行数据可视化常见的9种方法!超实用!
2018/07/11 Python
用python实现k近邻算法的示例代码
2018/09/06 Python
Python的Lambda函数用法详解
2019/09/03 Python
Python3.5 win10环境下导入kera/tensorflow报错的解决方法
2019/12/19 Python
python 截取XML中bndbox的坐标中的图像,另存为jpg的实例
2020/03/10 Python
2021年的Python 时间轴和即将推出的功能详解
2020/07/27 Python
纯CSS3发光分享按钮的实现教程
2014/09/06 HTML / CSS
AmazeUI 缩略图的实现示例
2020/08/18 HTML / CSS
雅高酒店中国:Accorhotels.com China
2018/03/26 全球购物
LivingSocial英国:英国本地优惠
2019/02/22 全球购物
迟到检讨书300字
2014/02/14 职场文书
小班上学期评语
2014/05/05 职场文书
四查四看整改措施
2014/09/19 职场文书
单位计划生育责任书
2015/05/09 职场文书
《社戏》教学反思
2016/02/22 职场文书