搜尋
首頁後端開發php教程PHP校验码生成-备忘

PHP校验码生成--备忘

<?php session_start();//保存生成值,以与用户输入比较//-------------------------------------$img_w       = 80;// 设置图片宽$img_h       = 20;// 设置图片高$pixel_num   = 200;//点越多干扰越大$is_set_line = true;// 启用干扰线$pixel_mode  = 2;// 干扰点模式,1,同色;2,杂色//-------------------------------------// 随机数产生器function make_seed(){    list($usec, $sec) = explode(' ', microtime());    return (float) $sec + ((float) $usec * 100000);}mt_srand(make_seed());//4.2.0以下版本适用$authnum = mt_rand(100, 99999);// 加入session$_SESSION['verifycode']=$authnum;//echo $authnum;//生成验证码图片Header("Content-type: image/PNG");$im = imagecreatetruecolor($img_w, $img_h);$bg_color = ImageColorAllocate($im, mt_rand(250,255),mt_rand(250,255),mt_rand(250,255));// 绘制背景imagefill($im,0,0,$bg_color);$total_width = 0;$word_info = array();// 循环,获取文字信息$word_length = strlen($authnum);for($ii=0; $ii<$word_length; $ii++){    $word_space = mt_rand(1,5);    $font = rand(3,5);    mt_rand(1,9)%2 == 0?$top = 1:$top = 3;    $word_info[$ii]['char']   = substr($authnum,$ii,1);    $word_info[$ii]['font']   = $font;    $word_info[$ii]['offset'] = $top;    if($ii == 0)    {        $word_info[$ii]['width'] = 0;    }    $word_info[$ii]['width']  = imageFontWidth($font)+$word_space;    $word_info[$ii]['height'] = imageFontHeight($font);    $word_info[$ii]['color']  = imageColorAllocate($im, mt_rand(0,50),mt_rand(0,150),mt_rand(0,200));    // 文字总宽度    $total_width += $word_info[$ii]['width'];    // 取第一个字体的高度    if($ii == 0)    {        $total_height = imagefontHeight($font);    }}// 计算偏移$offset_x = floor(($img_w - $total_width)/2);$offset_y = floor(($img_h - $total_height)/2);// 填充验证码$wid = 0;$i = 0;foreach($word_info as $key=>$val){    if($i>0)    {        $wid += $val['width'];    }    imagestring($im, $val['font'], $offset_x + $wid, $val['offset'] + $offset_y, $val['char'], $val['color']);    $i++;}switch($pixel_mode){    case 1:        $pixel_color  = ImageColorAllocate($im,                                        mt_rand(50,255),                                        mt_rand(50,255),                                        mt_rand(50,255));        // 干扰象素        for($i=0;$i 
陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
如何解决 golang 中的 “undefined: rand.Seed” 错误?如何解决 golang 中的 “undefined: rand.Seed” 错误?Jun 25, 2023 am 08:34 AM

在使用Golang进行开发或学习过程中,我们可能会遇到undefined:rand.Seed的错误提示。这个错误通常会在需要使用随机数生成器时出现,因为在Golang中需要先设置一个随机数种子,才能使用rand包中的函数。本篇文章将介绍如何解决这种错误。1.引入math/rand包首先,我们需要在代码中引入math/rand包。在

Word与Excel联动:表格借用Word进行分栏打印!Word与Excel联动:表格借用Word进行分栏打印!May 07, 2022 am 10:28 AM

在之前的文章《实用Word技巧分享:聊聊你没用过的“行号”功能》中,我们了解了Word中你肯定没用过的"行号”功能。今天继续实用Word技巧分享,看看Excel表格怎么借用Word进行分栏打印,快来收藏使用吧!

实用Word技巧分享:设置字符间距、行距和段落间距实用Word技巧分享:设置字符间距、行距和段落间距Apr 26, 2022 am 10:25 AM

在之前的文章《实用Word技巧分享:设置页码的终极方法!》中,我们学习了Word页码的设置方法。而今天我们来一起聊聊Word文本间距设置的几个技巧,快来收藏使用吧!

实用Word技巧分享:使页面自动滚动实用Word技巧分享:使页面自动滚动May 02, 2022 am 10:00 AM

在之前的文章《实用Word技巧分享:隐藏图片,提升文档浏览和编辑效率!》中,我们学习了隐藏图片的技巧,可提升文档浏览和编辑效率。下面本篇文章再给大家分享一个实用Word技巧,看看怎么让页面自动滚动,快来收藏使用吧!

实用Word技巧分享:【F4】键快速统一图片大小实用Word技巧分享:【F4】键快速统一图片大小Jun 07, 2022 am 10:27 AM

在之前的文章《实用Word技巧分享:怎么跨文档快速复制样式》中,我们了解了在文档间快速复制样式的方法。今天我们聊聊Word快捷键,聊聊【F4】键快速统一图片大小,快来看看吧!

实用Word技巧分享:表格中如何自动添加编号实用Word技巧分享:表格中如何自动添加编号Apr 22, 2022 am 09:44 AM

在之前的文章《实用Word技巧分享:如何一键删除所有数字》中,我们学习了Word中一键删除所有数字的方法。而今天我们来聊聊Word表格中如何自动添加编号,简单却很实用!

实用Word技巧分享:怎么精控页面的“行数”和“字符个数”实用Word技巧分享:怎么精控页面的“行数”和“字符个数”Jun 01, 2022 am 11:04 AM

在之前的文章《实用Word技巧分享:图、表如何自动编号?》中,我们了解了Word排版-让图、表自动编号的方法。而今天聊聊Word精确控制页面“行数”和“字符个数”的方法,快来看看吧!

word打一个字后面就少一个字怎么回事word打一个字后面就少一个字怎么回事Jun 15, 2019 pm 03:07 PM

原因:输入模式有问题,进入了插入模式。解决方法:在键盘中,找到“Insert”键,敲击一下关闭插入模式,恢复正常输入模式即可。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前By尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前By尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

WebStorm Mac版

WebStorm Mac版

好用的JavaScript開發工具

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強大的PHP整合開發環境

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

SublimeText3 英文版

SublimeText3 英文版

推薦:為Win版本,支援程式碼提示!