致命错误:类';finfo';在第49行的C:\xampp\htdocs\portfolio\actions\addProject\u action.php中找不到

致命错误:类';finfo';在第49行的C:\xampp\htdocs\portfolio\actions\addProject\u action.php中找不到,php,Php,我正在尝试在我的网站上上传文件。我查阅了PHP手册,发现这是用于检查文件类型的: // DO NOT TRUST $_FILES['upfile']['mime'] VALUE !! // Check MIME Type by yourself. $finfo = new finfo(FILEINFO_MIME_TYPE); // line 49 if (false === $ext = array_search( $finfo->file($_FILES['topImage'][

我正在尝试在我的网站上上传文件。我查阅了PHP手册,发现这是用于检查文件类型的:

// DO NOT TRUST $_FILES['upfile']['mime'] VALUE !!
// Check MIME Type by yourself.
$finfo = new finfo(FILEINFO_MIME_TYPE); // line 49
if (false === $ext = array_search(
    $finfo->file($_FILES['topImage']['tmp_name']),
    array(
        'jpg' => 'image/jpeg',
        'png' => 'image/png',
        'gif' => 'image/gif',
    ),
    true
)) {
    throw new RuntimeException('Invalid file format.');
}
但是通过这段代码,我得到一个php错误,它说: 致命错误:在第49行的C:\xampp\htdocs\portfolio\actions\addProject\u action.php中找不到类“finfo”

有人知道为什么以及如何解决这个问题吗?(显然,我的PHP版本5.2.0是错误的,所以我更想知道在更高版本的PHP中是否有类似的好方法来实现这一点?)

我有以下代码:

if(empty($_FILES['topImage'])){
    $errors['topImage'] = "You have to choose a Top Image.";
}else{
    // The code is inside here
}


我认为finfo类在PHP>=5.3.0中可用。可能您的PHP低于5.3.0。

我认为finfo类在PHP>=5.3.0中可用。可能您的PHP低于5.3.0。

取消对行的注释
;文件\xampp\php\php.ini中的extension=php_fileinfo.dll
,取消对行的注释
;文件\xampp\php\php.ini中的extension=php\u fileinfo.dll
表示当前工作目录中不存在任何名为
finfo
的类。谢谢。是的,我得到了,但为什么?我该如何修复它?他们没有解释关于这个部分的任何内容,所以我认为这只是代码使用的例子来自:你没有写过链接吗?我写的链接就是我遵循的链接。它没有说明如何解决这个问题,或者这甚至是一种可能性?@SannaBergström您的
echo phpversion()是什么?它声明在当前工作目录中不存在任何名为
finfo
的类。谢谢。是的,我知道了,但为什么?我该如何修复它?他们没有解释关于这个部分的任何内容,所以我认为这只是代码使用的例子来自:你没有写过链接吗?我写的链接就是我遵循的链接。它没有说明如何解决这个问题,或者这甚至是一种可能性?@SannaBergström您的
echo phpversion()是什么?好的,我来检查一下。如果是的话,还有其他方法吗?更多信息请看这个,但我仍然只有PHP5.2.0,所以需要找到其他方法吗?若并没有,我希望这个链接能帮助你们验证图片,好的,我会检查的。如果是的话,还有其他方法吗?更多信息请看这个,但我仍然只有PHP5.2.0,所以需要找到其他方法吗?如果不是,我希望这个链接能帮助你验证图片,它应该是评论而不是回答,应该是评论而不是回答