作者:子华2502924833 | 来源:互联网 | 2020-08-04 21:46
生成验证码,注意font字体路径要对,否则显示图片不存在
session_start();
//1>设置验证码图片大小的函数 $image = imagecreatetruecolor(200, 60);
//5>设置验证码颜色 imagecolorallocate(int im, int red, int green, int blue); $bgcolor = imagecolorallocate($image, 255, 255, 255); //#ffffff //6>区域填充 int imagefill(int im, int x, int y, int col) (x,y) 所在的区域着色,col 表示欲涂上的颜色 imagefill($image, 0, 0, $bgcolor);
//7>设置ttf字体 $fOntface= 'simhei.ttf';
//7>设置字库,实现简单的数字储备 $str = '生成中文验证码并检测对错实例';
//str_split()切割字符串为一个数组,一个中文在utf_8为3个字符 $strdb = str_split($str, 3);
//>11 $captcha_code = '';
//8>生成随机的汉子 for ($i = 0; $i <4; $i++) {
//设置字体颜色,随机颜色
$fOntcolor= imagecolorallocate($image, rand(0, 120), rand(0, 120), rand(0, 120)); //0-120深颜色
//随机选取中文
$in = rand(0, count($strdb));
$cn = $strdb[$in];
//将中文记录到将保存到session的字符串中
$captcha_code .= $cn;
/* imagettftext (resource $image ,float $size ,float $angle ,int $x ,int $y,int $color,
string $fontfile ,string $text ) 幕布 ,尺寸,角度,坐标,颜色,字体路径,文本字符串
mt_rand()生成更好的随机数,比rand()快四倍 */
imagettftext($image, mt_rand(20, 24), mt_rand(-60, 60), (40 * $i + 20), mt_rand(30, 35), $fontcolor, $fontface, $cn);
}
//11>存到session $_SESSION[&#39;sucaihuo_code&#39;] = $captcha_code;
Ajax检测验证码
function checkCode() {
$.post("ajax.php", {code: $("#input_code").val()}, function(data) {
if (data == &#39;1&#39;) {
alert("验证码正确!");
} else {
alert("验证码错误!");
}
}, "json")
}
推荐教程:PHP验证码完整视频教程
以上就是PHP生成中文验证码并检测对错实例的详细内容,更多请关注 第一PHP社区 其它相关文章!