分享一段简单的PHP验证码生成示例代码,生成的验证码是一张包含随机数字或字母的图片,用户需要输入正确的验证码才能进行下一步操作,可以保护网站安全。
代码思路
创建一个验证码图片:可以使用GD库或ImageMagick库生成一个空白的图片。
在图片中绘制验证码:使用GD库或ImageMagick库,在图片上随机绘制字符或数字。
存储验证码:将生成的验证码存储到session或Cookie中,以便稍后进行验证。
输出验证码:将生成的验证码输出到浏览器,让用户输入。
示例代码
<?php session_start(); header("Content-type: image/png"); $width = 100; $height = 30; $length = 4; $code = ''; for($i=0;$i<$length;$i++){ $code .= rand(0,9); } $_SESSION['captcha'] = $code; $image = imagecreate($width, $height); $bg = imagecolorallocate($image, 255, 255, 255); $textcolor = imagecolorallocate($image, 0, 0, 0); imagestring($image, 5, 30, 8, $code, $textcolor); imagepng($image); imagedestroy($image); ?>
代码释义
首先启动了一个会话,并设置了一个变量来存储验证码。
然后,我们创建了一个100x30的空白图片,并设置了白色的背景色和黑色的文本颜色。我们使用imagestring函数在图片中随机绘制了4个数字,并将其存储在变量$code中。
最后,我们使用imagepng函数输出生成的图片,并销毁图片资源。
在实际应用中,你可以根据需要调整图片大小、颜色、字体和字符集等。