Php finfo_文件返回空字符串

Php finfo_文件返回空字符串,php,mime-types,Php,Mime Types,我试图在移动上传的文件之前检查它的mime类型,但我无法让finfou_file返回任何内容 $finfo = finfo_open(FILEINFO_MIME_TYPE); $mime = finfo_file($finfo, $_FILES['imageFile']['tmp_name']); echo $mime; // returns NOTHING! …因此,只需在finfo_文件中进行测试即可,并且文件路径良好: echo phpversion(); // returns 5.1.

我试图在移动上传的文件之前检查它的mime类型,但我无法让
finfou_file
返回任何内容

$finfo = finfo_open(FILEINFO_MIME_TYPE);
$mime = finfo_file($finfo, $_FILES['imageFile']['tmp_name']);
echo $mime;
// returns NOTHING!
…因此,只需在finfo_文件中进行测试即可,并且文件路径良好:

echo phpversion();
// returns 5.1.28

$finfo = finfo_open(FILEINFO_MIME_TYPE);
foreach (glob("*") as $filename) {
    echo finfo_file($finfo, $filename) . ', ';
}
// returns text/plain, text/html, image/png, directory, text/x-asm, text/x-php, text/x-php, text/x-php, directory, directory

echo move_uploaded_file($_FILES['imageFile']['tmp_name'], getcwd().'/uploadsTemp/'. uniqid());
// returns 1

不知何故,
finfou文件
无法读取该文件

这可能是一个愚蠢的答案,因为您可能有很多原因无法使用此选项,但是

你不能仅仅使用
$\u文件[“Img”][“type”]
并使用它所给出的MIME类型吗


如果这不能回答您的问题,很抱歉。

今天我遇到了相同的问题,这是因为上传的文件比php.ini中的upload_max_文件大

我只是在这里注意到它,因为我在其他帖子中找不到这个解决方案。

我相信,它(
finfo_file
)不仅返回mime类型,还返回文件内容的文本描述

尝试使用此
$imageinfo['mime']
。也许有帮助


还有一个建议,但我不确定,为什么你必须使用
$\u文件['imageFile']['tmp\u name']
而不是
$\u文件['imageFile']['name']
?使用临时文件是否如此重要?

这在什么操作系统上运行?$\u文件[“Img”][“type”]无法确定正确的mime,并且可能被欺骗