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 相关文章推荐
实现分十页分向前十页向后十页的处理
Oct 09 PHP
PHP __autoload()方法真的影响性能吗?
Mar 30 PHP
PHP在线生成二维码代码(google api)
Jun 03 PHP
PHP计数器的实现代码
Jun 08 PHP
PHP与Java进行通信的实现方法
Oct 21 PHP
PHP实现更新中间关联表数据的两种方法
Sep 01 PHP
PHP循环遍历数组的3种方法list()、each()和while总结
Nov 19 PHP
php压缩和解压缩字符串的方法
Mar 14 PHP
php+jQuery+Ajax实现点赞效果的方法(附源码下载)
Jul 21 PHP
orm获取关联表里的属性值
Apr 17 PHP
微信公众平台开发教程②微信端分享功能图文详解
Apr 10 PHP
laravel中Redis队列监听中断的分析
Sep 14 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
thinkPHP的Html模板标签使用方法
2012/11/13 PHP
关于svn冲突的解决方法
2013/06/21 PHP
php+xml编程之xpath的应用实例
2015/01/24 PHP
Thinkphp5 如何隐藏入口文件index.php(URL重写)
2019/10/16 PHP
php使用redis的几种常见操作方式和用法示例
2020/02/20 PHP
深入理解JavaScript系列(10) JavaScript核心(晋级高手必读篇)
2012/01/15 Javascript
Javascript模块化编程(一)AMD规范(规范使用模块)
2013/01/17 Javascript
javascript数组输出的两种方式
2015/01/13 Javascript
jquery实现两边飘浮可关闭的对联广告
2015/11/27 Javascript
Javascript实现的SHA-256加密算法完整实例
2016/02/02 Javascript
详解AngularJs中$resource和restfu服务端数据交互
2016/09/21 Javascript
JavaScript实现事件的中断传播和行为阻止方法示例
2017/01/20 Javascript
JavaScript监听手机物理返回键的两种解决方法
2017/08/14 Javascript
NodeJS有难度的面试题(能答对几个)
2019/10/09 NodeJs
Vue.js数字输入框组件使用方法详解
2019/10/19 Javascript
你知道JavaScript Symbol类型怎么用吗
2020/01/08 Javascript
JS数组的常用10种方法详解
2020/05/08 Javascript
vue中element 的upload组件发送请求给后端操作
2020/09/07 Javascript
在Python中使用HTMLParser解析HTML的教程
2015/04/29 Python
简单谈谈python中的语句和语法
2017/08/10 Python
python批量复制图片到另一个文件夹
2018/09/17 Python
Django实现文件上传和下载功能
2019/10/06 Python
对tensorflow中cifar-10文档的Read操作详解
2020/02/10 Python
使用CSS3实现input多选框自定义样式的方法示例
2019/07/19 HTML / CSS
澳大利亚珍珠首饰购物网站:Vayo Pearls
2019/03/11 全球购物
武汉英思工程科技有限公司&ndash;ORACLE面试测试题目
2012/04/30 面试题
机电一体化自荐信
2013/12/10 职场文书
人事科岗位职责范本
2014/03/02 职场文书
新法人代表任命书
2014/06/06 职场文书
文秘班元旦晚会活动策划方案
2014/08/28 职场文书
地震捐款倡议书
2014/08/29 职场文书
保密法制宣传月活动总结
2015/05/07 职场文书
年会主持人开场白台词
2015/05/29 职场文书
公司车辆管理制度
2015/08/04 职场文书
学校趣味运动会开幕词
2016/03/04 职场文书
Python用tkinter实现自定义记事本的方法详解
2022/03/31 Python