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 相关文章推荐
在apache下限制每个虚拟主机的并发数!!!!
Oct 09 PHP
php xml文件操作实现代码(二)
Mar 20 PHP
php 数组的指针操作实现代码
Feb 08 PHP
深入掌握include_once与require_once的区别
Jun 17 PHP
php+js iframe实现上传头像界面无跳转
Apr 29 PHP
php分页示例分享
Apr 30 PHP
PHP htmlspecialchars()函数用法与实例讲解
Mar 08 PHP
vmware linux系统安装最新的php7图解
Apr 14 PHP
Referer原理与图片防盗链实现方法详解
Jul 03 PHP
对laravel的csrf 防御机制详解,及form中csrf_token()的存在介绍
Oct 24 PHP
Laravel Eloquent分表方法并使用模型关联的实现
Nov 25 PHP
php实现简易计算器
Aug 28 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的返回引用和局部静态变量
2015/06/04 PHP
Yii中CGridView实现批量删除的方法
2015/12/28 PHP
php探针不显示内存解决方法
2019/09/17 PHP
修改好的jquery滚动字幕效果实现代码
2011/06/22 Javascript
利用json获取字符出现次数的代码
2012/03/22 Javascript
跨浏览器的事件对象介绍
2012/06/27 Javascript
jQuery实现拖动调整表格单元格大小的代码实例
2015/01/13 Javascript
javascript实现网页屏蔽Backspace事件,输入框不屏蔽
2015/07/21 Javascript
易操作的jQuery表单提示插件
2015/12/01 Javascript
jQuery操作dom实现弹出页面遮罩层(web端和移动端阻止遮罩层的滑动)
2016/08/25 Javascript
jquery hover 不停闪动问题的解决方法(亦为stop()的使用)
2017/02/10 Javascript
正则 js分转元带千分符号详解
2017/03/08 Javascript
JavaScript实现星星等级评价功能
2017/03/22 Javascript
深究AngularJS——ng-checked(回写:带真实案例代码)
2017/06/13 Javascript
p5.js实现斐波那契螺旋的示例代码
2018/03/22 Javascript
jQuery实现ajax回调函数带入参数的方法示例
2018/06/26 jQuery
基于JS实现简单滑块拼图游戏
2019/10/12 Javascript
JS判断数组是否包含某元素实现方法汇总
2020/06/24 Javascript
python写的一个squid访问日志分析的小程序
2014/09/17 Python
Python编写电话薄实现增删改查功能
2016/05/07 Python
python3+PyQt5实现使用剪贴板做复制与粘帖示例
2017/01/24 Python
Python插件virtualenv搭建虚拟环境
2017/11/20 Python
Python从零开始创建区块链
2018/03/06 Python
python3调用百度翻译API实现实时翻译
2018/08/16 Python
python儿童学游戏编程知识点总结
2019/06/03 Python
利用python-pypcap抓取带VLAN标签的数据包方法
2019/07/23 Python
利用Python如何制作贪吃蛇及AI版贪吃蛇详解
2020/08/24 Python
意大利奢侈品综合电商网站:MODES
2019/12/14 全球购物
俄罗斯第一家多品牌在线奢侈品精品店:Aizel.ru
2020/09/06 全球购物
应届生法律顾问求职信
2013/11/19 职场文书
班组长工作职责
2013/12/25 职场文书
护士毕业自我鉴定
2014/02/07 职场文书
葬礼司仪主持词
2014/03/31 职场文书
违纪检讨书范文
2015/01/27 职场文书
Python实现老照片修复之上色小技巧
2021/10/16 Python
分享MySQL常用 内核 Debug 几种常见方法
2022/03/17 MySQL