重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
本篇内容主要讲解“PHP怎么识别文件伪装”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“PHP怎么识别文件伪装”吧!
成都创新互联公司的客户来自各行各业,为了共同目标,我们在工作上密切配合,从创业型小企业到企事业单位,感谢他们对我们的要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。专业领域包括网站设计、成都做网站、电商网站开发、微信营销、系统平台开发。
问题:
文件上传时候需要验证上传的文件是否合法,文件伪装如何识别?
一个简单测试:把txt文件后缀直接改成jpg;上传
test
1.通过$_FILES['userfile']['type'];获取文件后缀名;
$data = $_FILES['userfile']; var_dump($data); /**结果**/ /* array(5) { ["name"]=> string(8) "test.jpg" ["type"]=> string(10) "image/jpeg" ["tmp_name"]=> string(26) "/private/var/tmp/phpfyE3EC" ["error"]=> int(0) ["size"]=> int(19) } */
没有检测出来;
2.用pathinfo()函数来获取文件路径的信息
$data = $_FILES['userfile']; // var_dump($data); var_dump(pathinfo($data['name'])); /**结果**/ /* array(4) { ["dirname"]=> string(1) "." ["basename"]=> string(8) "test.jpg" ["extension"]=> string(3) "jpg" ["filename"]=> string(4) "test" } */
没有检测出来;
3.PHP的扩展fileinfo(需要安装开启)
$data = $_FILES['userfile']; $filename = $data['tmp_name']; $finfo = finfo_open(FILEINFO_MIME_TYPE);//返回 mime 类型。 自 PHP 5.3.0 可用。 $mimetype = finfo_file($finfo, $filename); finfo_close($finfo); var_dump($mimetype); /**结果**/ //string(10) "text/plain"
到此,相信大家对“PHP怎么识别文件伪装”有了更深的了解,不妨来实际操作一番吧!这里是创新互联网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!