【发布时间】:2010-10-20 17:16:43
【问题描述】:
我正在尝试在我的 PHP 应用程序中检查上传文件的 MIME 类型。我上传文件,然后执行此操作,其中 $file 是我的文件的路径:
$finfo = new finfo(FILEINFO_MIME);
$mimetype = $finfo->file($file);
在这种情况下,$mimetype 始终是一个空字符串。我已经对几种文件类型(.jpg、.doc、.txt、.pdf)进行了测试,但它始终为空。它应该返回类似“image/jpeg”的东西。
我正在调试并更改了第一行,因此代码 sn-p 现在是这样的:
$finfo = new finfo(FILEINFO_NONE);
$info = $finfo->file($file);
在这种情况下,当我上传 jpg 时,$info 是这样的:JPEG 图像数据,JFIF 标准 1.02。所以现在我知道它正确地访问了文件,但是传入 FILEINFO_MIME 并没有给我正确的 mime 字符串。
这只发生在我的登台服务器上。在我的本地服务器上,我得到了正确的 mime 类型。有谁知道为什么我的登台服务器为 mime 类型返回一个空字符串?
【问题讨论】:
-
返回空字符串还是FALSE?
-
它返回空字符串。
标签: php mime-types file-upload