位置: 编程技术 - 正文

PHP验证码类ValidateCode解析(php验证码扭曲效果怎么做)

编辑:rootadmin

推荐整理分享PHP验证码类ValidateCode解析(php验证码扭曲效果怎么做),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php识别验证码的库高级,php验证码代码怎么写,php验证码代码怎么写,php制作验证码登录页面,php验证码识别,php 验证码,php验证码代码怎么写,php 验证码,内容如对您有帮助,希望把文章链接给更多的朋友!

PHP解析验证码类

1.开始

在网上看到使用PHP写的ValidateCode生成验证码类,感觉不错,特拿来分析学习一下。

2.类图

3.验证码类部分代码

3.1 定义变量

$charset 是随机因子,这里是去掉了几个不容易区分的字符,如字母"i,l,o,q",数字"0,1"。有必要可以加入一些中文或其他字符或算式等。

$codeLen表示验证码长度,常见4位。

3.2构造函数,设置验证码字体,生成一个真彩色图像img

3.3从随机因子中随机抽取4个字符,作为$code验证码.

3.4生成验证码背景色.

其中mt_rand(, ),目的是随机取比较浅的颜色。

3.5在图像上生成文字.

在图像上生成验证码文字,主要考虑文字在图像上的位置和每一个文字颜色。

控制第n个文字的x轴位置 = (图像宽度 / 验证码长度) * (n-1) + 随机的偏移数; 其中n = {d1....n}

PHP验证码类ValidateCode解析(php验证码扭曲效果怎么做)

控制第n个文字的y轴位置 = 图像高度 / 2 + 随机的偏移数;

mt_rand(0, ) 随机取文字颜色,0-目的是取比较深的颜色。

mt_rand(-, ) 随机的文字旋转。

3.6在图像上生成线条和雪花

画线条的时候,取比较深的颜色值,而画雪花的时候取比较淡的颜色值,目的是尽可能的不影响人眼识别验证码,又能干扰自动识别验证码机制。

3.7对外生成验证码图像,供外部调用。

3.8完整代码:

4.测试

测试代码:

生成验证码:

5.应用

上面onclick代码是点击验证码图片,能自动刷新验证码。

code.php:

有关应用的完整代码可以从 的CMS1.0 文件里下载。

6.小结

在独立测试过程,没发现什么问题;但应用到项目的时候,刚开始发现无法生成验证码图片,网上找了一下,有的说是在outPut()函数中,

在header('Content-Type: image/png'); 这行代码前面增加了一行ob_clean()代码,可以解决验证码这块问题。虽然此方法简单,但这可能会引起其他缓冲数据问题,因为db_clean()功能就是丢弃输出缓冲区中的内容。

标签: php验证码扭曲效果怎么做

本文链接地址:https://www.jiuchutong.com/biancheng/296225.html 转载请保留说明!

上一篇:PHP缩略图生成和图片水印制作(php缩进)

下一篇:Yii框架弹出窗口组件CJuiDialog用法分析(提示框架)

  • 企业合并债权如何处理
  • 企业计提印花税会计处理
  • 锦州税务师考试在哪个学校
  • 太阳能发电开票编码
  • 自查补税申报表
  • 发票没用完可以申请超限量吗
  • 货已到发票未到跨年怎么做账
  • 在建工程当中哪些是资产
  • 个人所得税0申报操作流程
  • 为什么增值税普通发票不能抵扣
  • 总资产增长率的含义
  • 收到外币货款账务处理
  • 以现金收回已核销的不良贷款分录?
  • 旅游业小规模差额计税的能开1%
  • 因质量问题退货和收回的药品应当
  • 脑部病毒感染什么症状
  • 企业固定资产出售账务处理
  • php中运算符
  • iphone助手
  • 坏账准备期末余额怎么计算
  • 客户申请退款商家拒绝退货退款会有什么效果
  • hpptd.exe
  • 确认应付职工薪酬是借方还是贷方
  • 违约罚款的会计分录
  • ipad最长使用时间
  • 埃莫尔斯
  • wordpress自定义api
  • php md5加盐
  • 库存现金被盗会怎么样
  • framework怎么用
  • laravel创建项目
  • js文件格式化工具
  • php短信验证免费接口配置
  • vue封装组建
  • 公司年终奖怎么入账
  • 原材料用于在建工程增值税如何处理
  • 合并报表少数股东权益抵消分录
  • 什么是企业管理的首要职能
  • 固定资产一次性扣除如何做账
  • 收保险公司工伤怎么赔偿
  • 公司裁员怎么补偿
  • 固定资产折旧加计扣除最新政策
  • 百旺金赋抄报税指南
  • 资产减值损失是什么意思
  • 其他应收款收不回来怎么写情况说明
  • 企业净利润流量怎么算
  • 周转材料低值易耗品五五摊销法
  • 什么叫查账征收和核定征收
  • 如何进行捐款活动
  • 过路费发票可以抵扣进项税吗
  • 农产品免税收入需要缴纳所得税吗
  • 商品销售方式
  • 收到保险公司赔款
  • 返回sql执行时间的方法
  • 苹果15手机价格和图片颜色
  • cndll.dll
  • fedora soas
  • win7系统如何卸载office2007
  • Win10 PC RS2快速预览版14926更新与修复内容汇总
  • centos8 systemd
  • xp电脑开机自检怎么取消
  • win1020h2无法重启
  • owmngr.exe - owmngr是什么进程 作用是什么
  • win8更新错误
  • unity出现bug
  • 安卓核心架构
  • pycharm中文教程
  • 怎么用html做一个留言板
  • nodejs 异步任务队列
  • js onkeypress与onkeydown 事件区别详细说明
  • android颜色代码表
  • jquery validate表单校验长度
  • Python Requests安装与简单运用
  • 北京地税税务总局官网
  • 云南发票网站
  • 举报电话12345管用吗
  • 我国就业制度的演变
  • 广东电子税务局电话
  • 农民专业合作社章程完整版
  • 国家税务总局河南税务局官网查询
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设