php验证文件格式之php_fileinfo扩展(可以防止文件伪装)

[复制链接]
查看1666 | 回复0 | 2020-9-27 16:40 | 显示全部楼层 |阅读模式
php验证文件格式之php_fileinfo扩展(可以防止文件伪装)
在php.ini中开启fileinfo扩展
  1. extension=php_fileinfo.dll
复制代码
注意:开启fileinfo扩展以后,就可以使用finfo_*的函数了
语法代码如下:
  1. <body>
  2. <?php
  3. if(!empty($_POST)) {
  4.         //第一步:创建finfo资源
  5.         $info=finfo_open(FILEINFO_MIME_TYPE);
  6.         //var_dump($info);                //resource(2) of type (file_info)
  7.         //第二步:将finfo资源和文件做比较
  8.         $mime=finfo_file($info,$_FILES['face']['tmp_name']);
  9.         //第三步,比较是否合法
  10.         $allow=array('image/jpeg','image/png','image/gif');        //允许的类别
  11.         echo in_array($mime,$allow)?'合法':'不合法';
  12. }
  13. ?>
  14. <form method="post" action="" enctype='multipart/form-data'>
  15.         <input type="file" name="face">
  16.         <input type="submit" name="button" value="上传">
  17. </form>
  18. </body>
复制代码

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

UID
1
贡献
387
丢币
38902
主题
4607
回帖
116
注册时间
2018-9-25
最后登录
2024-4-26