Comment vérifier l'extension d'un fichier en PHP ?

Réponses rédigées par Antoine
Dernière mise à jour : 2021-06-22 12:04:40
Thèmes : php - fichier - extension
Question

Comment faire pour vérifier l'extension d'un fichier en PHP, et n'autoriser que certaines extensions, par exemple lors d'un upload PHP ?

Réponse

Vous avez principalement deux méthodes pour vérifier la nature d'un fichier en PHP :

  • Soit vérifier son extension.
  • Soit vérifier le type MIME du fichier.

Pour vérifier l'extension d'un fichier, vous pouvez utiliser la fonction PHP pathinfo() et la constante PATHINFO_EXTENSION :

<?php
$image = 'image.jpg';
$extension = strtolower(pathinfo($image, PATHINFO_EXTENSION));
$valide = array('jpg', 'png', 'webp');

if (in_array($extension, $valide))
{ 
echo "extension valide";
}
else echo "extension non valide";
?>

Si vous préférez effectuer la vérification du fichier via son type MIME, référez-vous à cette autre question.