当前位置:Gxlcms > PHP教程 > 为什么要用finfo_file而不是直接用上传数组的type?该如何解决

为什么要用finfo_file而不是直接用上传数组的type?该如何解决

时间:2021-07-01 10:21:17 帮助过:6人阅读

为什么要用finfo_file 而不是直接用上传数组的type???
最近研究图片上传类;

里面用 finfo_file() 来检测文件mime;

很是费解: 上传的数组中明明就有type="", 和finfo_file() 的结果是一样的;

请问: 为何多此一举,用finfo_file() 再次检测mime呢? 无论怎么改后缀,数组的type和finfo_file的结果都是相同的;

唯一的解释就是: 黑客可以修改上传文件的数组,感觉不太现实啊. 按照这种道理,是不是所有未经过finfo_file() 检测的都有漏洞?不可能啊..


求解释为何要再次使用finfo_file()来对上传的文件MIME再次校正
------解决思路----------------------
注意 finfo_file 只在 php5.3 以上才可用

上传文件的类型是浏览器识别的,同一种文件,不同的浏览器判定的可能不同
finfo_file 用于在服务器端判断,这样就统一了不同浏览器间的差异

人气教程排行