通过文件头准确识别PHP上传的文件类型是怎样的
发表于:2025-02-04 作者:千家信息网编辑
千家信息网最后更新 2025年02月04日,这篇文章将为大家详细讲解有关通过文件头准确识别PHP上传的文件类型有哪些,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
千家信息网最后更新 2025年02月04日通过文件头准确识别PHP上传的文件类型是怎样的
这篇文章将为大家详细讲解有关通过文件头准确识别PHP上传的文件类型有哪些,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
'; $file = @fopen($filename, 'rb'); if ($file) { $str = @fread($file, 0x400); // 读取前 1024 个字节 echo substr($str, 0, 4); @fclose($file); } if (substr($str, 0, 4) == 'MThd' && $extname != 'txt') { $format = 'mid'; } elseif (substr($str, 0, 4) == 'RIFF' && $extname == 'wav') { $format = 'wav'; } elseif (substr($str ,0, 3) == "/xFF/xD8/xFF") { $format = 'jpg'; } elseif (substr($str ,0, 4) == 'GIF8' && $extname != 'txt') { $format = 'gif'; } elseif (substr($str ,0, 8 ) == "/x89/x50/x4E/x47/x0D/x0A/x1A/x0A") { $format = 'png'; } elseif (substr($str ,0, 2) == 'BM' && $extname != 'txt') { $format = 'bmp'; } elseif ((substr($str ,0, 3) == 'CWS' || substr($str ,0, 3) == 'FWS') && $extname != 'txt') { $format = 'swf'; } elseif (substr($str ,0, 4) == "/xD0/xCF/x11/xE0") { // D0CF11E == DOCFILE == Microsoft Office Document if (substr($str,0x200,4) == "/xEC/xA5/xC1/x00" || $extname == 'doc') { $format = 'doc'; } elseif (substr($str,0x200,2) == "/x09/x08" || $extname == 'xls') { $format = 'xls'; } elseif (substr($str,0x200,4) == "/xFD/xFF/xFF/xFF" || $extname == 'ppt') { $format = 'ppt'; } } elseif (substr($str ,0, 4) == "PK/x03/x04") { $format = 'zip'; } elseif (substr($str ,0, 4) == 'Rar!' && $extname != 'txt') { $format = 'rar'; } elseif (substr($str ,0, 4) == "/x25PDF"){ $format = 'pdf'; } elseif (substr($str ,0, 3) == "/x30/x82/x0A") { $format = 'cert'; } elseif (substr($str ,0, 4) == 'ITSF' && $extname != 'txt') { $format = 'chm'; } elseif (substr($str ,0, 4) == "/x2ERMF") { $format = 'rm'; } elseif ($extname == 'sql') { $format = 'sql'; } elseif ($extname == 'txt') { $format = 'txt'; } echo $format;
关于通过文件头准确识别PHP上传的文件类型有哪些就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
文件
类型
内容
文章
更多
知识
篇文章
不错
字节
质量
参考
帮助
有关
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
hive查询数据库所有表结构
2022年网络安全检查总结报告
基因差异表达的数据库
网络安全事件紧急通知
软件开发好学吗 就业前途
镇海敏捷软件开发
数据库为什么建表
命中我行高风险数据库
嵌入式软件开发大脑壳
S开头的网站数据库
政府网络安全知识网上答题
如何查看数据库的链接数
世界第一家网络安全公司
软件开发项目进度表跟进明细表
东方口岸安全数据库连不上网
linux部署安装数据库
数据库与信息系统实习
山西网络安全公司
呼市app软件开发培训机构
厦门鑫符号网络技术有限公司
服务器南瓜头
网袋数据库
山东联想服务器总代理公司
吉林通讯软件开发参考价格
蚂蚁科技 互联网金融架构
服务器配置与管理课程感想
为什么服务器管理器错误
查询数据库表前多少行明细
科大软件开发公司 概况
服务器内存被禁用怎么办