Heim >Backend-Entwicklung >PHP-Tutorial >PHP generiert chinesischen Verifizierungscode und erkennt richtige und falsche Beispiele
PHP generiert chinesische Verifizierungscodes und erkennt korrekte und falsche Beispiele. Heute werde ich sie mit Ihnen teilen. Es unterstützt die Anpassung von Chinesisch, Schriftarten. Hintergrundfarben usw.
Bestätigungscode generieren, auf den Schriftartenpfad achten, sonst existiert das angezeigte Bild nicht
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['sucaihuo_code'] = $captcha_code;
Ajax-Erkennungsbestätigungscode
function checkCode() { $.post("ajax.php", {code: $("#input_code").val()}, function(data) { if (data == '1') { alert("验证码正确!"); } else { alert("验证码错误!"); } }, "json") }
Empfohlenes Tutorial:Komplettes Video-Tutorial für PHP-Bestätigungscode
Das obige ist der detaillierte Inhalt vonPHP generiert chinesischen Verifizierungscode und erkennt richtige und falsche Beispiele. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!