如何使用 php 找到文件的 mime 类型?

2024-08-22php开发问题
4

本文介绍了如何使用 php 找到文件的 mime 类型?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

好的,所以我有一个 index.php 文件,它必须处理许多不同的文件类型.我如何根据 REQUEST_URI 猜测文件类型.

Ok, so I have an index.php file which has to process many different file types. how do I guess the filetype based on the REQUEST_URI.

如果我请求 http://site/image.jpg,并且所有请求都通过 index.php 重定向,看起来像这样

If I request http://site/image.jpg, and all requests redirect through index.php, which looks like this

<?php
   include('/www/site'.$_SERVER['REQUEST_URI']);
?>

我怎样才能让它正常工作?

How would I make that work correctly?

我应该根据请求的文件的扩展名进行测试,还是有办法获取文件类型?

Should I test based on the extension of the file requested, or is there a way to get the filetype?

推荐答案

如果您确定您只使用图像,您可以查看 getimagesize() exif_imagetype() PHP 函数,它尝试返回图像 mime-type.

If you are sure you're only ever working with images, you can check out the getimagesize() exif_imagetype() PHP function, which attempts to return the image mime-type.

如果您不介意外部依赖,您还可以查看优秀的 getID3 库,它可以确定许多不同文件类型的 mime-type.

If you don't mind external dependencies, you can also check out the excellent getID3 library which can determine the mime-type of many different file types.

最后,您可以查看 mime_content_type() 函数 - 但它已被 Fileinfo PECL 扩展名弃用.

Lastly, you can check out the mime_content_type() function - but it has been deprecated for the Fileinfo PECL extension.

这篇关于如何使用 php 找到文件的 mime 类型?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

The End

相关推荐

PHP实现DeepL翻译API调用
DeepL的翻译效果还是很强大的,如果我们要用php实现DeepL翻译调用,该怎么办呢?以下是代码示例,希望能够帮到需要的朋友。 在这里需要注意,这个DeepL的账户和api申请比较难,不支持中国大陆申请,需要拥有香港或者海外信用卡才行,没账号的话,目前某宝可以...
2025-08-20 php开发问题
168

PHP通过phpspreadsheet导入Excel日期数据处理方法
PHP通过phpspreadsheet导入Excel日期,导入系统后,全部变为了4开头的几位数字,这是为什么呢?原因很简单,将Excel的时间设置问文本,我们就能看到该日期本来的数值,上图对应的数值为: 要怎么解决呢?进行数据转换就行,这里可以封装方法,或者用第三方的...
2024-10-23 php开发问题
287

mediatemple - 无法使用 codeigniter 发送电子邮件
mediatemple - can#39;t send email using codeigniter(mediatemple - 无法使用 codeigniter 发送电子邮件)...
2024-08-23 php开发问题
11

Laravel Gmail 配置错误
Laravel Gmail Configuration Error(Laravel Gmail 配置错误)...
2024-08-23 php开发问题
16

将 PHPMailer 用于 SMTP 的问题
Problem with using PHPMailer for SMTP(将 PHPMailer 用于 SMTP 的问题)...
2024-08-23 php开发问题
4

关于如何在 GoDaddy 服务器中使用 PHPMailer 设置 SMTP 的问题
Issue on how to setup SMTP using PHPMailer in GoDaddy server(关于如何在 GoDaddy 服务器中使用 PHPMailer 设置 SMTP 的问题)...
2024-08-23 php开发问题
17