用PHP实现登陆验证码(类似条行码状)


Posted in PHP onOctober 09, 2006

<?php

function UPCAbarcode($code) {
  $lw = 2; $hi = 100;
  $Lencode = array('0001101','0011001','0010011','0111101','0100011',
                   '0110001','0101111','0111011','0110111','0001011');
  $Rencode = array('1110010','1100110','1101100','1000010','1011100',
                   '1001110','1010000','1000100','1001000','1110100');
  $ends = '101'; $center = '01010';
  /* UPC-A Must be 11 digits, we compute the checksum. */
  if ( strlen($code) != 11 ) { die("UPC-A Must be 11 digits."); }
  /* Compute the EAN-13 Checksum digit */
  $ncode = '0'.$code;
  $even = 0; $odd = 0;
  for ($x=0;$x<12;$x++) {
    if ($x % 2) { $odd += $ncode[$x]; } else { $even += $ncode[$x]; }
  }
  $code.=(10 - (($odd * 3 + $even) % 10)) % 10;
  /* Create the bar encoding using a binary string */
  $bars=$ends;
  $bars.=$Lencode[$code[0]];
  for($x=1;$x<6;$x++) {
    $bars.=$Lencode[$code[$x]];
  }
  $bars.=$center;
  for($x=6;$x<12;$x++) {
    $bars.=$Rencode[$code[$x]];
  }
  $bars.=$ends;
  /* Generate the Barcode Image */
  $img = ImageCreate($lw*95+30,$hi+30);
  $fg = ImageColorAllocate($img, 0, 0, 0);
  $bg = ImageColorAllocate($img, 255, 255, 255);
  ImageFilledRectangle($img, 0, 0, $lw*95+30, $hi+30, $bg);
  $shift=10;
  for ($x=0;$x<strlen($bars);$x++) {
    if (($x<10) || ($x>=45 && $x<50) || ($x >=85)) { $sh=10; } else { $sh=0; }
    if ($bars[$x] == '1') { $color = $fg; } else { $color = $bg; }
    ImageFilledRectangle($img, ($x*$lw)+15,5,($x+1)*$lw+14,$hi+5+$sh,$color);
  }
  /* Add the Human Readable Label */
  ImageString($img,4,5,$hi-5,$code[0],$fg);
  for ($x=0;$x<5;$x++) {
    ImageString($img,5,$lw*(13+$x*6)+15,$hi+5,$code[$x+1],$fg);
    ImageString($img,5,$lw*(53+$x*6)+15,$hi+5,$code[$x+6],$fg);
  }
  ImageString($img,4,$lw*95+17,$hi-5,$code[11],$fg);
  /* Output the Header and Content. */
  header("Content-Type: image/png");
  ImagePNG($img);
}

UPCAbarcode('12345678901');

?>

用PHP实现登陆验证码(类似条行码状)

PHP 相关文章推荐
用Socket发送电子邮件
Oct 09 PHP
十天学会php(3)
Oct 09 PHP
Php Image Resize图片大小调整的函数代码
Jan 17 PHP
实例讲解PHP面向对象之多态
Aug 20 PHP
smarty内置函数capture用法分析
Jan 22 PHP
PHP实现QQ登录实例代码
Jan 14 PHP
php+html5实现无刷新图片上传教程
Jan 22 PHP
PHP实现RTX发送消息提醒的实例代码
Jan 03 PHP
Smarty3配置及入门语法
Feb 22 PHP
php安全配置记录和常见错误梳理(总结)
Mar 28 PHP
详解在YII2框架中使用UEditor编辑器发布文章
Nov 02 PHP
PHP封装的page分页类定义与用法完整示例
Dec 24 PHP
用PHP创建PDF中文文档
Oct 09 #PHP
PHP与javascript对多项选择的处理
Oct 09 #PHP
3
Oct 09 #PHP
example2.php
Oct 09 #PHP
对盗链说再见...
Oct 09 #PHP
PHP出错界面
Oct 09 #PHP
ftp类(myftp.php)
Oct 09 #PHP
You might like
php循环输出数据库内容的代码
2008/05/24 PHP
php 采集书并合成txt格式的实现代码
2009/03/01 PHP
php实现专业获取网站SEO信息类实例
2015/04/02 PHP
十个优秀的Ajax/Javascript实例网站收集
2010/03/31 Javascript
js用Date对象处理时间实现思路及代码
2013/01/31 Javascript
获取客户端网卡MAC地址和IP地址实现JS代码
2013/03/17 Javascript
javascript实现tabs选项卡切换效果(自写原生js)
2013/03/19 Javascript
Javascript事件实例详解
2013/11/06 Javascript
深入理解javascript中defer的作用
2013/12/11 Javascript
用jQuery与JSONP轻松解决跨域访问的问题
2014/02/04 Javascript
div失去焦点事件实现思路
2014/04/22 Javascript
JavaScript中通过提示框跳转页面的方法
2016/02/14 Javascript
jquery编写Tab选项卡滚动导航切换特效
2020/07/17 Javascript
XMLHttpRequest Level 2 使用指南
2016/08/26 Javascript
轻松掌握JavaScript享元模式
2016/08/27 Javascript
JS按钮闪烁功能的实现代码
2017/07/21 Javascript
Node.js微信 access_token ( jsapi_ticket ) 存取与刷新的示例
2017/09/30 Javascript
微信小程序实现美团菜单
2018/06/06 Javascript
JS如何判断对象是否包含某个属性
2020/08/29 Javascript
vue等两个接口都返回结果再执行下一步的实例
2020/09/08 Javascript
JS算法教程之字符串去重与字符串反转
2020/12/15 Javascript
python实现文件名批量替换和内容替换
2014/03/20 Python
python实现通过代理服务器访问远程url的方法
2015/04/29 Python
讲解Python中运算符使用时的优先级
2015/05/14 Python
实例详解python函数的对象、函数嵌套、名称空间和作用域
2019/05/31 Python
python设置随机种子实例讲解
2019/09/12 Python
python类中super() 的使用解析
2019/12/19 Python
数字漫画:comiXology
2020/06/13 全球购物
某公司C#程序员面试题笔试题
2014/05/26 面试题
成功的酒店创业计划书
2013/12/27 职场文书
学校运动会开幕演讲稿
2014/01/04 职场文书
安全大检查实施方案
2014/02/22 职场文书
中国梦演讲稿范文
2014/08/28 职场文书
2014年民政工作总结
2014/11/26 职场文书
考试作弊检讨书怎么写?
2014/12/21 职场文书
恋恋笔记本观后感
2015/06/16 职场文书