Déterminer le type de contenu d'un fichier en PHP
Lors de l'envoi d'un e-mail avec une pièce jointe, il est crucial de spécifier le contenu correct tapez pour ce fichier. Cela guide le client de messagerie dans la gestion appropriée du fichier. En PHP, vous pouvez récupérer le type de contenu en utilisant différentes méthodes.
Utilisation de 'finfo_file()' (Recommandé)
Si votre version PHP prend en charge l'extension finfo, vous peut utiliser 'finfo_file()' pour obtenir le type MIME du fichier. Voici un exemple :
$finfo = finfo_open(FILEINFO_MIME_TYPE); $contentType = finfo_file($finfo, $file); finfo_close($finfo);
Utilisation de 'mime_content_type()'
Une ancienne alternative à 'finfo_file()' est la fonction 'mime_content_type()'. Cependant, il se peut qu'il ne soit pas disponible dans toutes les versions de PHP.
require_once 'upgradephp/ext/mime.php'; // Load the mime extension if necessary $contentType = mime_content_type($file);
Options de secours
Si aucune des méthodes ci-dessus ne fournit un résultat fiable, vous pouvez envisager d'utiliser ces options de secours :
Exemple d'utilisation
Voici un exemple qui combine toutes ces options :
function getFileMimeType($file) { $contentType = null; if (function_exists('finfo_file')) { $finfo = finfo_open(FILEINFO_MIME_TYPE); $contentType = finfo_file($finfo, $file); finfo_close($finfo); } elseif (function_exists('mime_content_type')) { require_once 'upgradephp/ext/mime.php'; $contentType = mime_content_type($file); } elseif (is_file($file)) { // Executing 'file' command } elseif (@exif_imagetype($file)) { // Determining image mime type } return $contentType; }
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!