Maison > développement back-end > tutoriel php > Le fichier téléchargé est-il vraiment une image ? Comment vérifier les fichiers image en PHP.

Le fichier téléchargé est-il vraiment une image ? Comment vérifier les fichiers image en PHP.

Mary-Kate Olsen
Libérer: 2024-11-03 11:33:29
original
273 Les gens l'ont consulté

Is the uploaded file really an image? How to verify image files in PHP.

Vérification des fichiers image en PHP

Lors de la réception de fichiers en PHP, il est crucial de s'assurer qu'il s'agit d'images authentiques pour des raisons de sécurité. Se fier uniquement aux vérifications des extensions de fichiers peut s'avérer peu fiable, car des utilisateurs malveillants peuvent renommer des scripts avec des extensions de type image.

Utiliser getimagesize()

La fonction getimagesize() propose une approche globale pour déterminer si un fichier reçu est une image. Il renvoie un tableau contenant des informations sur l'image, notamment sa largeur, sa hauteur et son type MIME. Voici comment l'implémenter :

<code class="php">if (@is_array(getimagesize($mediapath))) {
    $image = true;
} else {
    $image = false;
}</code>
Copier après la connexion

Si la fonction getimagesize() récupère avec succès un tableau d'informations, elle indique que le fichier est une véritable image. Sinon, il s'agit probablement d'un fichier non image.

Exemple de sortie

Voici un exemple de sortie de getimagesize() :

Array (
[0] => 800
[1] => 450
[2] => 2
[3] => width="800" height="450"
[bits] => 8
[channels] => 3
[mime] => image/jpeg)
Copier après la connexion

Cette sortie montre que le fichier est bien une image d'une largeur de 800 pixels, d'une hauteur de 450 pixels et d'une image/jpeg de type MIME.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal