Php Can';使用Zend Zend_文件\u传输\u适配器\u Http时无法检测MIME类型!
我正在使用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类型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(); $
非常感谢您的帮助我相信两个代码片段中的
$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以重试,但无法获得它。非常感谢你。