Comment générer une image de code de vérification à l'aide de PHP
Le code de vérification Captcha (CAPTCHA) est une technologie courante utilisée pour authentifier un utilisateur ou restreindre l'accès à des programmes automatisés. En générant des images aléatoires et en obligeant les utilisateurs à identifier les caractères ou images corrects, les CAPTCHA peuvent empêcher efficacement les attaques de robots et les enregistrements de spam. Dans cet article, nous présenterons comment utiliser PHP pour générer une image de code de vérification et l'afficher sur la page.
<?php $width = 120; // 验证码图片的宽度 $height = 40; // 验证码图片的高度 $characters = 4; // 验证码字符个数 $possibleChars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
$image = imagecreatetruecolor($width, $height); $backgroundColor = imagecolorallocate($image, 255, 255, 255); // 背景颜色为白色 $textColor = imagecolorallocate($image, 0, 0, 0); // 文字颜色为黑色 imagefill($image, 0, 0, $backgroundColor); $font = 'path/to/your/font.ttf'; // 字体文件路径,可以根据自己的需求修改
$captcha = ''; for ($i = 0; $i < $characters; $i++) { $randomChar = $possibleChars[rand(0, strlen($possibleChars) - 1)]; $captcha .= $randomChar; $x = ($width / $characters) * $i + 10; // 10为字体边距 $y = $height / 2 + 15; // 15为字体居中偏移量 imagettftext($image, 20, 0, $x, $y, $textColor, $font, $randomChar); }
session_start(); $_SESSION['captcha'] = $captcha;
header('Content-type: image/png'); imagepng($image); imagedestroy($image);
Conclusion
Grâce aux étapes ci-dessus, nous avons réussi à générer une image de code de vérification simple et à l'afficher sur la page Web. Chaque fois que l'utilisateur actualise la page, il recevra un nouveau code de vérification pour garantir l'unicité et la sécurité du code de vérification. Dans des applications pratiques, nous pouvons comparer le code de vérification saisi par l'utilisateur avec le code de vérification stocké dans la session pour vérifier l'identité de l'utilisateur.
Il s'agit d'un exemple simple de PHP générant une image de code de vérification. Vous pouvez encore améliorer et étendre cette fonction en fonction de vos propres besoins. J'espère que cet article vous aidera à comprendre et à appliquer la technologie des codes de vérification !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!