在 PHP 中确定文件内容类型
在 PHP 中,在将文件作为文件发送时确定其内容类型至关重要电子邮件附件。这可确保标头中指定正确的 MIME 类型,从而允许接收软件正确处理文件。
获取 Content-Type
建议的方法是利用 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; }
此函数尝试使用各种方法确定内容类型,包括:
通过利用多个方法,该函数为获取正确的内容类型提供了可靠的解决方案,无论操作系统或 PHP 环境如何。
以上是如何在 PHP 中可靠地确定文件内容类型?的详细内容。更多信息请关注PHP中文网其他相关文章!