如何利用PHP生成验证码

2024年09月06日 建站教程

在PHP中,可以使用GD库或者验证码类库生成验证码。以下是验证码生成和验证的基本代码示例:

<?php
session_start();
 
$length = 4; //验证码长度
$size = 30; //验证码字体大小
 
$code = ''; //保存验证码
 
$chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
 
//生成验证码
for ($i = 0; $i < $length; $i++) {
  $code .= $chars[mt_rand(0, strlen($chars) - 1)];
}
 
//保存验证码到Session
$_SESSION['code'] = $code;
 
//创建图片
$width = $length * $size + 10;
$height = $size + 10;
$image = imagecreate($width, $height);
 
//设置背景颜色
$bgColor = imagecolorallocate($image, 255, 255, 255);
 
//设置文字颜色
$textColor = imagecolorallocate($image, 0, 0, 0);
 
//添加噪点
for ($i = 0; $i < 100; $i++) {
  imagesetpixel($image, mt_rand(0, $width - 1), mt_rand(0, $height - 1), imagecolorallocate($image, mt_rand(0, 255), mt_rand(0, 255), mt_rand(0, 255)));
}
 
//添加验证码
imagestring($image, 5, 5, 5, $code, $textColor);
 
//输出图片
header('Content-Type: image/png');
imagepng($image);
 
//销毁图片资源
imagedestroy($image);
?>

本文链接:http://so.lmcjl.com/news/12354/

展开阅读全文
相关内容