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

 更新时间:2017年01月12日 11:22:54   作者:lx_3278@126  
这篇文章主要介绍了PHP生成图片验证码功能,结合实例形式简单介绍了php生成验证码图片的操作技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了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);

运行效果如下:

PS:这里再为大家推荐几款比较实用的图片处理工具供大家参考使用:

在线图片转换BASE64工具:
http://tools.jb51.net/transcoding/img2base64

ICO图标在线生成工具:
http://tools.jb51.net/aideddesign/ico_img

在线Email邮箱图标制作工具:
http://tools.jb51.net/email/emaillogo

在线图片格式转换(jpg/bmp/gif/png)工具:
http://tools.jb51.net/aideddesign/picext

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP图形与图片操作技巧汇总》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php面向对象程序设计入门教程》、《PHP网络编程技巧总结》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总

希望本文所述对大家PHP程序设计有所帮助。

相关文章

  • php基于登陆时间判断实现一天多次登录只积分一次功能示例

    php基于登陆时间判断实现一天多次登录只积分一次功能示例

    这篇文章主要介绍了php基于登陆时间判断实现一天多次登录只积分一次功能,适合会员系统的积分功能,涉及php时间判断与数据库相关操作技巧,需要的朋友可以参考下
    2017-10-10
  • 一个基于PDO的数据库操作类(新) 一个PDO事务实例

    一个基于PDO的数据库操作类(新) 一个PDO事务实例

    原先已经写过一个PDO的数据库操作类,这次只是在原先基础上进行修改。
    2011-07-07
  • 优化PHP代码的53条建议

    优化PHP代码的53条建议

    优化PHP代码的50条建议,学习php的朋友可以看下,有助于提高php效率
    2008-03-03
  • 8个PHP数组面试题

    8个PHP数组面试题

    这篇文章主要介绍了8个PHP数组面试题,例如写函数创建长度为10的数组,数组中的元素为递增的奇数,首项为1、创建长度为10的数组,数组中的数为递增的等比数,比值为3,首项为等题目,需要的朋友可以参考下
    2015-06-06
  • PHP实现的简单缓存类

    PHP实现的简单缓存类

    这篇文章主要介绍了PHP实现的简单缓存类,实例分析了php缓存文件的定义及使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-07-07
  • PHP函数参数传递的方式整理

    PHP函数参数传递的方式整理

    在本篇文章里小编给大家整理的是关于PHP函数参数传递的方式整理内容,需要的朋友们可以参考下。
    2020-03-03
  • Discuz!下Memcache缓存实现方法

    Discuz!下Memcache缓存实现方法

    在PHP+MySQL架构的站点中,本文重点从MySQL的角度去分析如何使Discuz!论坛(或者类似的PHP+MySQL架构的程序)应对大访问量。同时给出一些使用Memcache去减轻MySQL压力的建议
    2010-05-05
  • PHP实现搜索时记住状态的方法示例

    PHP实现搜索时记住状态的方法示例

    这篇文章主要介绍了PHP实现搜索时记住状态的方法,结合实例形式分析了php通过get参数传递及DOM元素形式记录搜索状态的相关操作技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2018-05-05
  • Ubuntu12下编译安装PHP5.3开发环境

    Ubuntu12下编译安装PHP5.3开发环境

    本文给大家分享的是在Ubuntu12下编译安装PHP5.3开发环境的方法和步骤,十分的细致,推荐给大家,有需要的小伙伴们可以参考下。
    2015-03-03
  • 自动把纯文本转换成Web页面的php代码

    自动把纯文本转换成Web页面的php代码

    用PHP来快速将纯ASCII文本完美地转换成为可读的HTML标记。
    2009-08-08

最新评论