Maison  >  Article  >  développement back-end  >  Un guide complet des fonctions du code de vérification d'image PHP : compétences en génération de code de vérification pour imagecreatetruecolor, imagestring, imagejpeg et d'autres fonctions

Un guide complet des fonctions du code de vérification d'image PHP : compétences en génération de code de vérification pour imagecreatetruecolor, imagestring, imagejpeg et d'autres fonctions

PHPz
PHPzoriginal
2023-11-18 17:53:16670parcourir

Un guide complet des fonctions du code de vérification dimage PHP : compétences en génération de code de vérification pour imagecreatetruecolor, imagestring, imagejpeg et dautres fonctions

Guide complet des fonctions du code de vérification d'image PHP : compétences en génération de code de vérification pour imagecreatetruecolor, imagestring, imagejpeg et d'autres fonctions, des exemples de code spécifiques sont requis

Introduction : Le code de vérification d'image est une méthode de vérification couramment utilisée sur les sites Web, utilisée pour distinguer les utilisateurs humains avec les programmes machine. PHP fournit plusieurs fonctions pour générer et traiter des codes de vérification d'image. Cet article présentera en détail les techniques d'utilisation de imagecreatetruecolor, imagestring, imagejpeg et d'autres fonctions pour générer des codes de vérification d'image, et fournira des exemples de code spécifiques.

1. Présentation

Le code de vérification de l'image affiche une image contenant des caractères aléatoires et demande à l'utilisateur de saisir les caractères corrects pour réussir la vérification. Son avantage est qu’il peut empêcher efficacement les programmes machines d’effectuer des opérations malveillantes sur le site Web et améliorer la sécurité de l’interaction entre les utilisateurs et le site Web.

En PHP, il existe trois fonctions principales pour générer des codes de vérification d'image :
• imagecreatetruecolor : crée une ressource d'image en vraies couleurs.
• imagestring : Écrivez une chaîne sur l'image.
• imagejpeg : sortie d'images au format JPEG.

Ci-dessous, nous expliquerons chaque fonction en détail et donnerons des exemples de code correspondants.

2. Fonction Imagecreatetruecolor

La fonction imagecreatetruecolor est utilisée pour créer une véritable ressource d'image couleur d'une taille spécifiée. Sa syntaxe est la suivante :
resource imagecreatetruecolor (int $width, int $height)

Parmi eux, $width et $height représentent respectivement la largeur et la hauteur de l'image, qui sont toutes deux des données entières. Voici un exemple de code pour créer une ressource d'image TrueColor de 100 x 50 pixels :

$width = 100;
$height = 50;
$image = imagecreatetruecolor($width, $height);
?>

3. Fonction Imagestring

La fonction imagestring est utilisée pour écrire des chaînes sur des images. Sa syntaxe est la suivante :
bool imagestring ( resource $image , int $font , int $x , int $y , string $string , int $color )

où $image représente la ressource image cible et $font représente la police size (la plage de valeurs est comprise entre 1 et 5), $x et $y représentent la position de départ de la chaîne, $string représente la chaîne à écrire et $color représente la couleur de la chaîne. Voici un exemple de code qui écrit une chaîne sur une image :

$font_size = 4;
$x = 10;
$y = 10;
$color = imagecolorallocate($image, 255, 255 , 255); // Attribue un blanc
$code = "ABCD"; // Caractères générés aléatoirement
imagestring($image, $font_size, $x, $y, $code, $color);
?>

4 .Fonction imagejpeg

La fonction imagejpeg est utilisée pour sortir des images au format JPEG. Sa syntaxe est la suivante :
bool imagejpeg ( resource $image [, string $filename [, int $quality ]] )

Parmi eux, $image représente la ressource image à sortir, $filename représente le nom du fichier de sortie (facultatif ), $quality représente la qualité de l'image de sortie (la plage de valeurs est de 0 à 100, la valeur par défaut est de 75). Voici un exemple de code qui génère une image au format JPEG :

$filename = "captcha.jpg";
$quality = 90;
header("Content-type: image/jpeg");
imagejpeg ($ image, $ filename, $ qualité); ;
$image = imagecreatetruecolor($width, $height);
$bg_color = imagecolorallocate($image, 0, 0, 0); // Définit la couleur d'arrière-plan sur noir

imagefill($image, 0, 0, $bg_color ); // Remplir la couleur d'arrière-plan

$font_size = 4;

$x = 10;
$y = 10;
$color = imagecolorallocate($image, 255, 255, 255); white
$code = "ABCD"; // Caractères générés aléatoirement
imagestring($image, $font_size, $x, $y, $code, $color); // Écrivez une chaîne sur l'image

$filename = " captcha.jpg";

$quality = 90;
header("Content-type: image/jpeg");
imagejpeg($image, $filename, $quality); // Image de sortie

imagedestroy($image); // Libérer les ressources d'image
?>

Le code ci-dessus implémente un processus simple de génération de code de vérification d'image. Nous pouvons modifier les paramètres en fonction de nos propres besoins, tels que la taille de l'image, la couleur d'arrière-plan, la couleur de la police, le contenu des caractères, etc., pour générer des images de code de vérification de différents styles.

Conclusion

Cet article présente la fonction de code de vérification d'image PHP pour aider les lecteurs à comprendre comment utiliser imagecreatetruecolor, imagestring, imagejpeg et d'autres fonctions pour générer des codes de vérification d'image. En modifiant les paramètres correspondants, des codes de vérification de différents styles et caractéristiques peuvent être réalisés. J'espère que cet article pourra vous aider à utiliser les codes de vérification d'image dans des applications pratiques. Si vous avez d'autres questions, n'hésitez pas à communiquer et à discuter.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn