gpt4 book ai didi

php - file->getMimeType() 始终使用 Zend Framework 返回 application/octet-stream

转载 作者:行者123 更新时间:2023-12-02 07:53:21 25 4
gpt4 key购买 nike

我的文件表单元素非常简单:

$this->archivo = new Zend_Form_Element_File('archivo');
$this->archivo->setLabel('Archivo:')
->setRequired(true)
->setDestination(UPLOAD_PATH)
->addValidator('Count', false, 1)
->addValidator('Size', false, MAX_FILE_SIZE)
->addValidator('Extension', false, Application_Form_Multimedia_SubirArchivo::EXTENSIONES_PERMITIDAS);
$this->addElement($this->archivo);

但是,在上传文件时(上传正常),我尝试获取 MIME 类型,但每个文件都是相同的:

$form->archivo->getMimeType()

它总是返回application/octet-stream,无论我尝试上传哪种类型的文件。

为什么会这样,我是不是错过了什么?谢谢

最佳答案

最可能的原因是,如果 fileinfo 或 mime_magic 扩展在您的 PHP 安装中都不可用,您正在使用的底层方法将退回到默认的 mimetype:

if (empty($result[$key])) {
$result[$key] = 'application/octet-stream';
}

建议您检查 Zend_File_Transfer_Adapter_Abstract 中的 getMimeType() 方法 - 该片段来自于 Zend_Form_Element_File::getMimeType() 中并从中调用 - 以获取详细信息,然后检查您安装了哪些扩展并适本地纠正。

关于php - file->getMimeType() 始终使用 Zend Framework 返回 application/octet-stream,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2374061/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com