如何使用 PHP < 5.3 获取文件内容类型?
Posted
技术标签:
【中文标题】如何使用 PHP < 5.3 获取文件内容类型?【英文标题】:How to get file content-type with PHP < 5.3? 【发布时间】:2011-03-02 21:50:03 【问题描述】:如何使用 php 检索文件的内容类型?
我不想单独依赖文件扩展名。
谢谢!
【问题讨论】:
【参考方案1】:http://www.php.net/manual/en/function.mime-content-type.php 已被 PECL Fileinfo 扩展名弃用。
【讨论】:
不幸的是,我认为 PECL Fileinfo 扩展不适用于 【参考方案2】:因为文件本身不一定存储 mime 类型,所以您必须使用各种方法来获取正确类型的提示。如果您知道该文件是图像,请使用 http://www.php.net/manual/en/function.getimagesize.php ... 您可以检查 .doc 或 .xsl 是否“看起来像”扩展名声称的那样,因为这些文件类型总是以相同的集合开头字节http://filext.com/file-extension/DOC(参见“识别字符”)。在某些情况下,如果不依赖扩展名就很难确定(例如,除了 .css 之外,text/plain 和 text/css 之间有什么区别,除非您要解析文件并考虑每种可能的文本类型? )
最后,您对自己感兴趣的文件类型了解得越多,就越能用它来验证文件是否属于该类型,并且花费更多的时间编写代码来完成这项工作,更好地确定正确的 mime 类型!
【讨论】:
以上是关于如何使用 PHP < 5.3 获取文件内容类型?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用获取参数将 laravel (5.3) 路由重定向到其他路由