最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
三种php汉字英文验证代码生成程序
时间:2022-06-24 18:34:29 编辑:袖梨 来源:一聚教程网
代码如下 | 复制代码 |
$ChineseChar = explode(',',"人,出,来,友,学,孝,仁,义,礼,廉,忠,国,中,易,白,者,火 ,王,金,木,雷,风,龙,虎,天,地, 生,晕,菜,鸟,田,三,百,钱,福 ,爱,情,兽,虫,鱼,九,网,新,度,哎,唉,啊,哦,仪,老,少,日, 月 ,星,肯,各,程"); $k[0]=$ChineseChar[array_rand($ChineseChar)]; $k[1]=$ChineseChar[array_rand($ChineseChar)]; $k[2]=$ChineseChar[array_rand($ChineseChar)]; $k[3]=$ChineseChar[array_rand($ChineseChar)]; $cookie_str=implode('', $k); setcookie('vrify',md5($cookie_str),time()+600); $str[0]=iconv('gb2312','UTF-8',$k[0]); $str[1]=iconv('gb2312','UTF-8',$k[1]); $str[2]=iconv('gb2312','UTF-8',$k[2]); $str[3]=iconv('gb2312','UTF-8',$k[3]); //构造图像 $x_size=100; $y_size=25; $font='simhei.ttf'; $pic=imagecreate($x_size,$y_size); $background_color = imagecolorallocate ($pic, 255, 255, 255); $foregroundArr = array(imagecolorallocate($pic, rand(0, 20), rand(0, 20), rand(0, 20)), imagecolorallocate($pic, rand(0, 20), rand(0, 10), rand(245, 255)), imagecolorallocate($pic, rand(245, 255), rand(0, 20), rand(0, 10)), imagecolorallocate($pic, rand(245, 255), rand(0, 20), rand(245, 255))); imagettftext($pic,mt_rand(12,15),mt_rand(-8,8),6,mt_rand(19,22),$foregroundArr[rand(0,3)],$font,$str[0]); imagettftext($pic,mt_rand(15,17),mt_rand(-8,8),26,20,$foregroundArr[rand(0,3)],$font,$str[1]); imagettftext($pic,mt_rand(12,15),mt_rand(-8,8),46,20,$foregroundArr[rand(0,3)],$font,$str[2]); imagettftext($pic,mt_rand(15,17),mt_rand(-8,8),66,mt_rand(19,22),$foregroundArr[rand(0,3)],$font,$str[3]); for ($i=0;$i<80;$i++) { $pointcol = imagecolorallocate($pic, rand(0,255), rand(0,255), rand(0,255)); imagesetpixel($pic,rand(2,$x_size-2),rand(2,$y_size-2),$pointcol); } $border = imagecolorallocate($pic, 133, 153, 193); imagerectangle($pic, 0, 0, $x_size - 1, $y_size - 1,$border); imagepng($pic); imagedestroy($pic); ?> |
代码如下 | 复制代码 |
session_start(); if($enablegd) //creates two variables to store color //fill image with bgcolor |
代码如下 | 复制代码 |
if(function_exists('imagettftext')) $border = imagecolorallocate($im, 133, 153, 193); $pointcol = imagecolorallocate($im, rand(0,255), rand(0,255), rand(0,255));
function verify($user_str){//从cookie中对比用户的输入 $foregroundArr = array(imagecolorallocate($pic, rand(0, 20), rand(0, 20), rand(0, 20)), shentian [楼主] |
网络采集汉字验证码
$ChineseChar = explode(',',"人,出,来,友,学,孝,仁,义,礼,廉,忠,国,中,易,白,者,火 ,王,金,木,雷,风,龙,虎,天,地, 生,晕,菜,鸟,田,三,百,钱,福 ,爱,情,兽,虫,鱼,九,网,新,度,哎,唉,啊,哦,仪,老,少,日, 月 ,星,肯,各,程");
$k[0]=$ChineseChar[array_rand($ChineseChar)];
$k[1]=$ChineseChar[array_rand($ChineseChar)];
$k[2]=$ChineseChar[array_rand($ChineseChar)];
$k[3]=$ChineseChar[array_rand($ChineseChar)];
$cookie_str=implode('', $k);
setcookie('vrify',md5($cookie_str),time()+600);
$str[0]=iconv('gb2312','UTF-8',$k[0]);
$str[1]=iconv('gb2312','UTF-8',$k[1]);
$str[2]=iconv('gb2312','UTF-8',$k[2]);
$str[3]=iconv('gb2312','UTF-8',$k[3]);
//构造图像
$x_size=100;
$y_size=25;
$font='simhei.ttf';
$pic=imagecreate($x_size,$y_size);
$background_color = imagecolorallocate ($pic, 255, 255, 255);
$foregroundArr = array(imagecolorallocate($pic, rand(0, 20), rand(0, 20), rand(0, 20)),
imagecolorallocate($pic, rand(0, 20), rand(0, 10), rand(245, 255)),
imagecolorallocate($pic, rand(245, 255), rand(0, 20), rand(0, 10)),
imagecolorallocate($pic, rand(245, 255), rand(0, 20), rand(245, 255)));
imagettftext($pic,mt_rand(12,15),mt_rand(-8,8),6,mt_rand(19,22),$foregroundArr[rand(0,3)],$font,$str[0]);
imagettftext($pic,mt_rand(15,17),mt_rand(-8,8),26,20,$foregroundArr[rand(0,3)],$font,$str[1]);
imagettftext($pic,mt_rand(12,15),mt_rand(-8,8),46,20,$foregroundArr[rand(0,3)],$font,$str[2]);
imagettftext($pic,mt_rand(15,17),mt_rand(-8,8),66,mt_rand(19,22),$foregroundArr[rand(0,3)],$font,$str[3]);
for ($i=0;$i<80;$i++)
{
$pointcol = imagecolorallocate($pic, rand(0,255), rand(0,255), rand(0,255));
imagesetpixel($pic,rand(2,$x_size-2),rand(2,$y_size-2),$pointcol);
}
$border = imagecolorallocate($pic, 133, 153, 193);
imagerectangle($pic, 0, 0, $x_size - 1, $y_size - 1,$border);
imagepng($pic);
imagedestroy($pic);
?>
相关文章
- 王者荣耀侦探能力大测试攻略 王者荣耀侦探能力大测试怎么过 11-22
- 无期迷途主线前瞻兑换码是什么 11-22
- 原神欧洛伦怎么培养 11-22
- 炉石传说网易云音乐联动怎么玩 11-22
- 永劫无间手游确幸转盘怎么样 11-22
- 无期迷途主线前瞻兑换码是什么 无期迷途主线前瞻直播兑换码介绍 11-22