PHP-GD库验证码

发布于 2022-04-28  610 次阅读


现在大多数网站都在使用短信、邮箱验证码、智能无感知、滑动拼图和点选等等作为主要验证码选项。

但是今天我们来看一个自己就能做的、比较原始的验证码:

这种验证码用到了PHP中的图形处理,具体实现步骤如下:先新建code.php

将该页面的类型设置为image.png,再创建图片资源

imagecreatetruecolor(int x,int y)返回一个大小为x*y黑色的画布

为画布分配颜色,从x,y点开始填充颜色
创建一个字符串,我们验证码中的文字就来自这里。汉字占3个字节,若果你是字母,就不用除3
随机取四个不同的汉字存入数组,当然你可以用循环来写

mt_rand()返回随机整数,因为是汉字,所以×3

将验证码拼成字符串并存入session
创建四个随机颜色
使用imagettftext()绘制文字,并随机它们的旋转角度和文字
将色彩拉满,随机生成3000个小点点作为验证码的干扰
这是它现在的样子,接下来,我们引用这个图像页面
没错就是这么简单粗暴,再给它添加个点击和刷新就reload的函数,实现验证码的刷新

大功告成!

届ける言葉を今は育ててる
最后更新于 2022-04-28