Maison > Article > développement back-end > Comment déterminer de manière fiable le type de contenu d’un fichier en PHP ?
Détermination du type de contenu d'un fichier en PHP
En PHP, il est essentiel de déterminer le type de contenu d'un fichier lors de son envoi en tant que pièce jointe à un e-mail. Cela garantit que le type MIME correct est spécifié dans l'en-tête, permettant au logiciel de réception de gérer correctement le fichier.
Obtention du type de contenu
L'approche recommandée consiste à utilisez la fonction getFileMimeType() :
function getFileMimeType($file) { if (function_exists('finfo_file')) { $finfo = finfo_open(FILEINFO_MIME_TYPE); $type = finfo_file($finfo, $file); finfo_close($finfo); } else { require_once 'upgradephp/ext/mime.php'; $type = mime_content_type($file); } if (!$type || in_array($type, array('application/octet-stream', 'text/plain'))) { $secondOpinion = exec('file -b --mime-type ' . escapeshellarg($file), $foo, $returnCode); if ($returnCode === 0 && $secondOpinion) { $type = $secondOpinion; } } if (!$type || in_array($type, array('application/octet-stream', 'text/plain'))) { require_once 'upgradephp/ext/mime.php'; $exifImageType = exif_imagetype($file); if ($exifImageType !== false) { $type = image_type_to_mime_type($exifImageType); } } return $type; }
Cette fonction tente de déterminer le type de contenu à l'aide de diverses méthodes, comprenant :
En utilisant plusieurs méthodes, cette fonction fournit un solution fiable pour obtenir le bon type de contenu, quel que soit le système d'exploitation ou l'environnement PHP.
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!