Mime键入Google Chrome中的zip文件
当我在Symfony应用程序上工作时,我发现了zip文件的mime类型中的一个奇怪问题。
根据w3school,zip文件的MIME类型是application/zip
。 这也是我相信的。
但是当我用IE浏览器在Symfony应用程序中上传一个zip文件时,该zip文件的mime类型是application/x-zip-compressed
。 当我在Firefox中上传zip文件时,该zip文件的MIME类型是application/octet-stream
。
他们都不是我想要相信的application/zip
。
谷歌浏览器是所有人最奇特的行为。 当我在Google Chrome中上传一个zip文件时,我无法确定它的正确MIME类型。 虽然我敢肯定,这不是
application/zip
application/x-zip
application/octet-stream
application/x-zip-compressed
谷歌浏览器中的zip文件的mime类型是一个空字符串,因为我发现通过倾销返回的sfValidatorFile
对象。 请注意, sfValidatorFile.type
对于zip文件是“”。
但是为jpeg文件返回的sfValidatorFile.type
对象是jpeg
。
在我看来,好像Symfony或Google Chrome中存在一个错误
更多信息:Gmail似乎将Google文档中的zip文件的MIME类型解释为application / zip。 这是正确的行为。 似乎证实这是Symfony的错误。
截至目前,zip文件的MIME类型是Google Chrome中的application / octet-stream 。 :)
这是Google Chrome的bug,不是Symfony。 我与Google Chrome的ZIP MIME存在同样的问题。
我有我自己的应用程序用PHP编写。
当你写echo $_FILES['yournameattr']['type'];
它会在您上传zip文件时返回空字符串,但当您上传gif或jpeg文件时,它会返回image / jpeg或image / gif。
我有Google Chrome版本3.0.195.6(测试版)。
虽然如果您需要快速解决方案,您可以使用preg_match来检查文件的扩展名(不管是否为zip)。
if (preg_match('/(.*).zip/',$_FILES['yournameattr']['name'])) {echo 'This is zip.';}
在我看来,好像Symfony中存在一个错误。
票已在这里打开。
链接地址: http://www.djcxy.com/p/47021.html