mime_content_type()函数不起作用

use*_*114 16 php

我使用mime_content_type()函数进行文件上传,localhost它正常工作,但它在联机文件中显示一些错误

致命错误:调用未定义的函数mime_content_type()

Rao*_*Rao 16

更新:

mime_content_type() 不再弃用,php7现在支持这个功能.

早期版本的答案:

mime_content_type() 不推荐使用,可能是因为[fileinfo] [1]可以为您提供有关该文件的信息等等.

您可以使用如下所示的finfo(),

function _mime_content_type($filename) {
    $result = new finfo();

    if (is_resource($result) === true) {
        return $result->file($filename, FILEINFO_MIME_TYPE);
    }

    return false;
}
Run Code Online (Sandbox Code Playgroud)

参考:https://stackoverflow.com/a/1263977/1161412

[1]:http://php.net/manual/en/class.finfo.php

  • finfo是一个pecl扩展名,因此如果未安装扩展名,则无效 (3认同)
  • 但是我测试的5.6安装给我一个“致命错误:找不到类'finfo'” (2认同)

Tec*_*hie 14

您必须具有mime_magic扩展名.检查你的php.ini并查看phpinfo().顺便说一下,这个函数已被弃用,因为PECL扩展Fileinfo以更清晰的方式提供相同的功能(和更多).

Windows用户必须在php.ini中包含捆绑的php_fileinfo.dll DLL文件才能启用此扩展.

libmagic库与PHP捆绑在一起,但包含PHP特定的更改.修复了一个名为libmagic.patch的libmagic补丁,可以在PHP fileinfo扩展源中找到.

阅读更多