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&amp;mysql(一)
Oct 09 PHP
隐藏X-Space个人空间下方版权方法隐藏X-Space个人空间标题隐藏X-Space个人空间管理版权方法
Feb 22 PHP
php下过滤HTML代码的函数
Dec 10 PHP
php中防止伪造跨站请求的小招式
Sep 02 PHP
php中stream(流)的用法
Mar 25 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(三)
Jun 23 PHP
C/S和B/S两种架构区别与优缺点分析
Oct 23 PHP
Zend Framework框架之Zend_Mail实现发送Email邮件验证功能及解决标题乱码的方法
Mar 21 PHP
Yii+MYSQL锁表防止并发情况下重复数据的方法
Jul 14 PHP
PHP对象链式操作实现原理分析
Oct 09 PHP
PHP实现与java 通信的插件使用教程
Aug 11 PHP
php适配器模式简单应用示例
Oct 23 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
新52大事件
2020/03/03 欧美动漫
php中3种方法统计字符串中每种字符的个数并排序
2012/08/27 PHP
PHP的反射机制实例详解
2017/03/29 PHP
详解PHP中的外观模式facade pattern
2018/02/05 PHP
php+js实现点赞功能的示例详解
2020/08/07 PHP
jQuery 1.3 和 Validation 验证插件1.5.1
2009/07/09 Javascript
JavaScript利用构造函数和原型的方式模拟C#类的功能
2014/03/06 Javascript
Node.js中AES加密和其它语言不一致问题解决办法
2014/03/10 Javascript
js 去除字符串第一位逗号的方法
2014/06/07 Javascript
js获取及修改网页背景色和字体色的方法
2015/12/29 Javascript
jQuery实现滚动鼠标放大缩小图片的方法(附demo源码下载)
2016/03/05 Javascript
强大的 Angular 表单验证功能详细介绍
2017/05/23 Javascript
jQuery实现table中两列CheckBox只能选中一个的示例
2017/09/22 jQuery
vue按需加载组件webpack require.ensure的方法
2017/12/13 Javascript
详解Vue单元测试case写法
2018/05/24 Javascript
使用post方法实现json往返传输数据的方法
2019/03/30 Javascript
vue单页面在微信下只能分享落地页的解决方案
2019/04/15 Javascript
vue+高德地图写地图选址组件的方法
2019/05/18 Javascript
vue制作抓娃娃机的示例代码
2020/04/17 Javascript
Python实现的简单hangman游戏实例
2015/06/28 Python
Python多线程实现同步的四种方式
2017/05/02 Python
python实现根据指定字符截取对应的行的内容方法
2018/10/23 Python
python实现RabbitMQ的消息队列的示例代码
2018/11/08 Python
python tornado使用流生成图片的例子
2019/11/18 Python
python实现12306登录并保存cookie的方法示例
2019/12/17 Python
tensorflow 2.1.0 安装与实战教程(CASIA FACE v5)
2020/06/30 Python
用Python实现定时备份Mongodb数据并上传到FTP服务器
2021/01/27 Python
Levi’s美国官网:美国著名的牛仔裤品牌
2016/08/19 全球购物
西班牙在线宠物商店:zooplus.es
2017/02/24 全球购物
中学教师实习自我鉴定
2013/09/28 职场文书
总经理助理的八要求
2013/11/12 职场文书
调解协议书
2014/04/16 职场文书
工资收入证明样本(5篇)
2014/09/16 职场文书
2014年稽查工作总结
2014/12/20 职场文书
事业单位聘任报告
2015/03/02 职场文书
二维码条形码生成的JavaScript脚本库
2022/07/07 Javascript