参考了网上PHP 生成验证码很多是类封装了的,没有封装的验证码其实只是几个GD函数而已,初学者可以看看,可以尝试自己封装。
<?php
session_start();
$im = imagecreate(80,30);//创建图片
$color = imagecolorallocate($im,rand(150,200),rand(150,200),rand(150,200));//设置图片背景
$str = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ123456789";//产生随机字符串
for($i=0;$i<5;$i++){
$code .= $str[rand(0,(strlen($str)-1))];
}
$_SESSION['code'] = $code;
for($a=0;$a<5;$a++){ //将字符串写入图片资源
$x = $a*10 + 15;
$y = rand(5,10); // www.jbxue.com
imagechar($im,5,$x,$y,$code{$a},imagecolorallocate($im,0,0,0));
}
header("Content-type:image/png");//输出图片资源
imagepng($im);
?>