PHP生成验证码

要使用jpgraph类库

代码

<?php

session_start();

header("content-type:image/png");     //设置创建图像的格式

$image_width=70;                      //设置图像宽度

$image_height=18;                     //设置图像高度

srand(microtime()*100000);            //设置随机数的种子

for($i=0;$i<4;$i++){                  //循环输出一个4位的随机数

   $new_number.=dechex(rand(0,15));

}

$_SESSION[check_checks]=$new_number;    //将获取的随机数验证码写入到SESSION变量中     

$num_image=imagecreate($image_width,$image_height);  //创建一个画布

imagecolorallocate($num_image,255,255,255);          //设置画布的颜色

for($i=0;$i<strlen($_SESSION[check_checks]);$i++){  //循环读取SESSION变量中的验证码

   $font=mt_rand(3,5);                              //设置随机的字体

   $x=mt_rand(1,8)+$image_width*$i/4;               //设置随机字符所在位置的X坐标

   $y=mt_rand(1,$image_height/4);                   //设置随机字符所在位置的Y坐标

   $color=imagecolorallocate($num_image,mt_rand(0,100),mt_rand(0,150),mt_rand(0,200));       //设置字符的颜色

   imagestring($num_image,$font,$x,$y,$_SESSION[check_checks][$i],$color);                   //水平输出字符

}

imagepng($num_image);               //生成PNG格式的图像

imagedestroy($num_image);           //释放图像资源
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,295评论 4 61
  • Web 浏览器中可能发生的事件有很多类型。如前所述,不同的事件类型具有不同的信息,而 DOM3 级事件规定了以下几...
    More_5897阅读 1,004评论 1 0
  • 3 在一间当铺里,他想用自己多年的小号,换一点午饭钱,这个在船上表演多年的演奏者,抚摸着手上的乐器,并告诉老板,他...
    候鸟之冬阅读 1,330评论 0 1
  • 【读的书】《万万没想到——用理工科思维理解世界》万维钢(同人于野) 【阅读有效时间】40分钟 【阅读遇到的困难】 ...
    半影时光阅读 183评论 0 0