阅读量:1
PHP生成验证码的方法有多种,以下是其中一种常见的方法:
- 使用GD库生成验证码图片:
// 创建一个 100x30 像素的空白图片 $image = imagecreatetruecolor(100, 30); // 生成随机验证码字符串 $code = ''; for ($i = 0; $i < 4; $i++) { $code .= chr(rand(65, 90)); } // 设置验证码图片的背景色和文字颜色 $bgColor = imagecolorallocate($image, 255, 255, 255); // 白色 $textColor = imagecolorallocate($image, 0, 0, 0); // 黑色 // 填充背景色 imagefill($image, 0, 0, $bgColor); // 在图片上绘制验证码文字 imagettftext($image, 20, 0, 10, 25, $textColor, 'path/to/font.ttf', $code); // 输出图像 header('Content-type: image/png'); imagepng($image); // 销毁图像资源 imagedestroy($image);
这段代码使用GD库创建了一个100x30像素的空白图片,然后通过chr(rand(65, 90))
生成了一个4位的随机验证码字符串。通过imagecolorallocate
函数设置了验证码图片的背景色和文字颜色,然后使用imagefill
函数填充背景色。最后使用imagettftext
函数在图片上绘制验证码文字。最后通过header
函数设置输出的图像类型为PNG,使用imagepng
函数输出图像,并使用imagedestroy
函数销毁图像资源。
你可以将上述代码保存为一个PHP文件,然后通过浏览器访问该文件就可以看到生成的验证码图片。