Php Can';使用Zend Zend_文件\u传输\u适配器\u Http时无法检测MIME类型!

Php Can';使用Zend Zend_文件\u传输\u适配器\u Http时无法检测MIME类型!,php,zend-framework,Php,Zend Framework,我正在使用Zend框架编写一个小脚本来上传和检测MIME类型。出于设计目的,我不能使用Zend_表单,而是使用normal。我只是从手册中申请: $adapter=new Zend_File_Transfer_adapter_Http(); $files=$adapter->getFileInfo(); $mime=$files->getMimeType() 但是系统通知函数getMimeType()不存在。然后,我试着: $adapter=new Zend_File_Transfer(); $

我正在使用Zend框架编写一个小脚本来上传和检测MIME类型。出于设计目的,我不能使用Zend_表单,而是使用normal。我只是从手册中申请:

$adapter=new Zend_File_Transfer_adapter_Http(); $files=$adapter->getFileInfo(); $mime=$files->getMimeType()

但是系统通知函数getMimeType()不存在。然后,我试着:

$adapter=new Zend_File_Transfer(); $files=$adapter->getFileInfo(); $mime=$files->getMimeType()

这一次,它也不起作用。那么,如何获得MIME类型


非常感谢您的帮助

我相信两个代码片段中的
$files
都只是一个简单的
数组
,每个元素都应该包含一个键来指示类型,如下所示:

$files = $adapter->getFileInfo();

foreach ($files as $file) {
    // Print the MIME Type for $file
    echo $file['type'];
}
Zend\u File\u Transfer\u Adapter\u Abstract
类定义用于确定MIME类型的代码。它取决于
Fileinfo
类/扩展或
mime\u content\u type()
函数(我相信是
Fileinfo
旧版本的一部分)

PHP5.3默认包括
Fileinfo
。5.3之前的版本要求使用PECL扩展:


你好,谢谢你的提示,我试过了,但即使我上传了PDF或JPEG文件,它仍然被识别为“应用程序/八位字节流”。我在MAC上开发,但我使用PHP5.2.x在CentOS机器上进行了测试。我需要安装任何东西才能识别正确的MIME类型吗?添加了有关MIME检测支持的附加信息--如果这对您不起作用,请告诉我。嗨,糟糕,虽然我无法在MAC上安装Fileinfo软件包,但我在CentOS box上试过,它仍然只能识别PDF文件为“应用程序/八位字节流”。我尝试重新启动Apache以重试,但无法获得它。非常感谢你。