PHP生成图片验证码功能示例


Posted in PHP onJanuary 12, 2017

本文实例讲述了PHP生成图片验证码功能。分享给大家供大家参考,具体如下:

只是简单的用随机函数实现了图片的生成,没有对验证的整个流程做介绍。

代码如下:

<?php
/**
 * Created by JetBrains PhpStorm.
 * User: lee
 * To change this template use File | Settings | File Templates.
 */
header("content-type:image/png");
$validateLength=4;
$strToDraw="";
$chars=[
  "0","1","2","3","4",
  "5","6","7","8","9",
  "a","b","c","d","e","f","g",
  "h","i","j","k","l","m","n",
  "o","p","q","r","s","t",
  "u","v","w","x","y","z",
  "A","B","C","D","E","F","G",
  "H","I","J","K","L","M","N",
  "O","P","Q","R","S","T",
  "U","V","W","X","Y","Z"
];
$imgW=80;
$imgH=25;
$imgRes=imagecreate($imgW,$imgH);
$imgColor=imagecolorallocate($imgRes,255,255,100);
$color=imagecolorallocate($imgRes,0,0,0);
for($i=0;$i<$validateLength;$i++){
  $rand=rand(1,58);
  $strToDraw=$strToDraw." ".$chars[$rand];
}
imagestring($imgRes,5,0,5,$strToDraw,$color);
for($i=0;$i<100;$i++){
  imagesetpixel($imgRes,rand(0,$imgW),rand(0,$imgH),$color);
}
imagepng($imgRes);
imagedestroy($imgRes);

运行效果如下:

PHP生成图片验证码功能示例

PHP 相关文章推荐
PHP中数字检测is_numeric与ctype_digit的区别介绍
Oct 04 PHP
精美漂亮的php分页类代码
Apr 02 PHP
关于php 接口问题(php接口主要也就是运用curl,curl函数)
Jul 01 PHP
php获得用户ip地址的比较不错的方法
Feb 08 PHP
带你了解PHP7 性能翻倍的关键
Nov 19 PHP
搭建Vim为自定义的PHP开发工具的一些技巧
Dec 11 PHP
PHP XML和数组互相转换详解
Oct 26 PHP
php socket通信简单实现
Nov 18 PHP
PHP实现的mongoDB数据库操作类完整实例
Apr 10 PHP
php实现微信支付之企业付款
May 30 PHP
Yii2.0框架模型多表关联查询示例
Jul 18 PHP
thinkphp5.1框架模板赋值与变量输出示例
May 25 PHP
PHP中字符串长度的截取用法示例
Jan 12 #PHP
PHP实现二维数组去重功能示例
Jan 12 #PHP
PHP生成图片缩略图类示例
Jan 12 #PHP
php+redis实现多台服务器内网存储session并读取示例
Jan 12 #PHP
[原创]PHPCMS遭遇会员投稿审核无效的解决方法
Jan 11 #PHP
YII2 实现多语言配置的方法分享
Jan 11 #PHP
laravel5.2实现区分前后台用户登录的方法
Jan 11 #PHP
You might like
PHP通过反射动态加载第三方类和获得类源码的实例
2015/11/27 PHP
php安装dblib扩展,连接mssql的具体步骤
2017/03/02 PHP
thinkphp5 migrate数据库迁移工具
2018/02/20 PHP
Laravel框架Request、Response及Session操作示例
2019/05/06 PHP
js prototype截取字符串函数
2010/04/01 Javascript
javascript高级学习笔记整理
2011/08/14 Javascript
Jquery右下角抖动、浮动 实例代码(兼容ie6、FF)
2013/08/15 Javascript
jquery修改属性值实例代码(设置属性值)
2014/01/06 Javascript
js/jquery判断浏览器的方法小结
2014/09/02 Javascript
运用jQuery定时器的原理实现banner图片切换
2014/10/22 Javascript
node.js使用require()函数加载模块
2014/11/26 Javascript
js给selected添加options的方法
2015/05/06 Javascript
jquery实现图片水平滚动效果代码分享
2015/08/26 Javascript
jQuery validate+artdialog+jquery form实现弹出表单思路详解
2016/04/18 Javascript
Vuejs第十二篇之动态组件全面解析
2016/09/09 Javascript
js实现数字递增特效【仿支付宝我的财富】
2017/05/05 Javascript
javaScript和jQuery自动加载简单代码实现方法
2017/11/24 jQuery
JQuery判断radio单选框是否选中并获取值的方法
2019/01/17 jQuery
JavaScript类型相关的常用操作总结
2019/02/14 Javascript
Vue项目从webpack3.x升级webpack4不完全指南
2019/04/28 Javascript
JavaScript进阶(一)变量声明提升实例分析
2020/05/09 Javascript
Python计算斗牛游戏概率算法实例分析
2017/09/26 Python
Python cookbook(数据结构与算法)找出序列中出现次数最多的元素算法示例
2018/03/15 Python
Python实现读取SQLServer数据并插入到MongoDB数据库的方法示例
2018/06/09 Python
python numpy 矩阵堆叠实例
2020/01/17 Python
python 多线程死锁问题的解决方案
2020/08/25 Python
python math模块的基本使用教程
2021/01/16 Python
html5自动播放mov格式视频的实例代码
2020/01/14 HTML / CSS
英国设计的甲板鞋和船鞋:Chatham
2018/12/06 全球购物
护理专科毕业生自荐书范文
2014/02/19 职场文书
质量标语大全
2014/06/12 职场文书
国际经济与贸易专业求职信
2014/07/10 职场文书
中层领导干部群众路线对照检查材料思想汇报
2014/10/02 职场文书
暂住证明怎么写
2015/06/19 职场文书
妇产科护理心得体会
2016/01/22 职场文书
Win7/8.1用户可以免费升级到Windows 11系统吗?
2021/11/21 数码科技