<?php
// exemple de conversion
// image déjà présente sur le serveur
$file = 'image_non_supportee.extension';
$imagick = new Imagick();
$imagick->readImage($file);
$imagick->setImageFormat('png');
$imagick->writeImage('image_convertie_et_supportee.png');
?>
<?php
// récupère la liste des extensions supportées (attention : pas seulement des extensions d'images)
$formats_supportes = Imagick::queryFormats();
$image = 'image.ext';
// obtenir l'extension du fichier
// la seule vérification de l'extension, n'est pas sûre ! Il faut vérifier le mime_type du fichier également, par exemple un fichier .jpg peut en réalité être un WEBP.
$extension = strtolower(pathinfo($image, PATHINFO_EXTENSION));
// si non pris en charge, afficher une erreur
if(!in_array(strtoupper($extension), $formats_supportes))
exit("Le format $extension n'est pas supporté."); // affiché pour l'exemple, attention aux failles XSS
// tout est OK, utiliser l'image
$imagick = new Imagick($image);
?>
<?php
// Fichier à vérifier
$image = 'image.ext';
// on obtient le type MIME avec mime_content_type
$mime_type = mime_content_type($image);
if($mime_type === false)
exit("Impossible de déterminer le type MIME du fichier.");
echo "MIME-Type détecté : $mime_type<br>"; //affiché à des fin de tests
// tableau des types MIME supportés
$mime_type_supportes = ['image/jpeg', 'image/png', 'image/gif'];
// vérifie si le type MIME est supporté
if(!in_array($mime_type, $mime_type_supportes))
exit("Format non pris en charge : $mime_type");
// traiter l'image avec Imagick si le format est validé et pris en charge
$imagick = new Imagick($image);
?>
J'espère que ce script gratuit vous sera utile dans vos projets.Si vous souhaitez soutenir mon travail, un simple clic sur le bouton "Donner remercier" ci-dessous ou une note serait grandement apprécié. Merci pour votre générosité !
Vous cherchez à pousser encore plus loin vos idées ou à les concrétiser avec un site internet sur mesure ? Je suis là pour vous aider ! Mon expérience en développement web est à votre disposition.
Que ce soit la création de votre site web pro ou l'apport de fonctionnalités avancées à votre projet, contactez-moi pour en discuter et avoir un devis gratuit personnalisé.
Mon objectif est de vous offrir des solutions sur mesure qui répondent à vos besoins, et votre vision associée à mon expertise donnera vie à votre projet web parfait. Contactez-moi aujourd'hui, je réponds en général en moins d'une heure :
Demander un devis