位置: 编程技术 - 正文

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用法分析(提示框架)

  • 社保由税务局征收
  • 等线补交以前年度附加税会计分录是?
  • 转让旧固定资产可以开专票吗
  • 个人对个人大额转账要什么资料
  • 工资薪金需要缴纳什么税种
  • 电子发票限额多了怎么办
  • 印花税减半征收优惠政策2022
  • 一般纳税人软件销售税率
  • 个人劳务费增值税如何缴纳
  • 小规模注销时盈余公积余额怎么处理
  • 非公益性捐赠支出是永久性差异吗
  • 一般纳税人出售固定资产税率
  • 注册商标成功的标志图片
  • 税收成本如何影响税收管理制度
  • 企业个人所得税逾期未申报怎么办
  • 减免税款为什么在借方
  • 地税附加税减免政策
  • 工资三金是指哪三样
  • 股权转让能否低于股价
  • 党建经费如何入账
  • 什么是小型微利企业标准2023
  • 怎样取得个人所得税
  • 支票过期可以进账吗
  • 应交增值税和实缴增值税差额怎么做账
  • 收到其他公司的投资款计入什么科目
  • 员工离职补偿金计算方法
  • linux版笔记本什么意思
  • 怎么隐藏权限
  • 病毒变种太多
  • 系统搜索力
  • qqlogin.exe是什么进程 qqlogin.exe应用程序错误解决办法
  • PHP中使用什么关键字声明变量的作用域为全局
  • php实现微信公众号分享
  • 无效借款合同自被确认为无效之日起无效
  • 如何通过无线路由器连接打印机
  • macos安装多版macos并存
  • 增值税专用发票丢了怎么补救
  • 增值税专用发票丢了怎么补救
  • 最新人工智能软件chingt
  • echarts快速上手
  • ip命令查看ip地址
  • php知识点汇总与解答
  • 跨年度多计提的附加税怎么做分录
  • 计提 增值税
  • 差旅费抵扣进项税额
  • 收到联营企业分红怎么做
  • 销项税额和进项税额月底怎么结转
  • 非营利组织也被称为?
  • 外购固定资产对公司影响
  • 低值易耗品如何界定
  • 少数股东权益贷方表示什么意思
  • 去年未分配利润 负数 结转今年
  • 政府部门拨款流程
  • 研究费用怎么做账
  • 增值税专用发票查询系统官方网站
  • 报告日前损益调整
  • 应付利润科目
  • 结转已售材料成本6000元
  • sql查询包含特殊
  • windows2008 64位系统下MySQL 5.7绿色版的安装教程
  • initcause
  • explorer.exe是啥意思
  • Ubuntu系统怎么设置root
  • ubuntu chmod
  • mac如何恢复已删除文件
  • win 7怎么办
  • win10恢复到win7系统
  • unity移动方法
  • jquery each return
  • nodejs搭建本地资源服务器
  • 解决在基层
  • java对象怎么比较
  • android基于linux还是unix
  • 电子税务局年度申报流程
  • 百旺金赋天津客服
  • 现行的企业所得税率是多少
  • 新车缴纳车船税减免性质是什么
  • 乐陵到德州多远距离
  • 1950土地改革后土地所有权
  • 小规模纳税人的增值税怎么计算
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设