php通过文件头判断格式的方法


Posted in PHP onMay 28, 2016

本文实例讲述了php通过文件头判断格式的方法。分享给大家供大家参考,具体如下:

function judgeFile($file,$form){
if(!empty($file) && !empty($form)){
$filehead = fopen($file,'r');
$bin = fread($filehead, 2);
fclose($filehead);
$data = unpack('C2chars', $bin);
$type_code = intval($data['chars1'].$data['chars2']);
switch ($type_code) {
case 7790: $fileType = 'exe';break;
  case 7784: $fileType = 'midi';break;
  case 8075: $fileType = 'zip';break;
  case 8297: $fileType = 'rar';break;
  case 255216: $fileType = 'jpg';break;
  case 7173: $fileType = 'gif';break;
  case 6677: $fileType = 'bmp';break;
  case 13780: $fileType = 'png';break;
  default: $fileType = 'unknown';break;
}
if(!is_array($form)){
if($fileType==$form){
return true;
}else{
return false;
}
}else{
if(in_array($file, $form)){
return true;
}else{
return FALSE;
}
}
}else{
return false;
}
}
PHP 相关文章推荐
Bo-Blog专用的给Windows服务器的IIS Rewrite程序
Aug 26 PHP
真正根据utf8编码的规律来进行截取字符串的函数(utf8版sub_str )
Oct 24 PHP
php调用c接口无错版介绍
Mar 11 PHP
使用Discuz关键词服务器实现PHP中文分词
Mar 11 PHP
PHP闭包实例解析
Sep 08 PHP
php执行多个存储过程的方法【基于thinkPHP】
Nov 08 PHP
PHP实现的XML操作类【XML Library】
Dec 29 PHP
PHP写的简单数字验证码实例
May 23 PHP
PHP递归遍历文件夹去除注释并压缩php源代码的方法示例
May 23 PHP
PDO::getAttribute讲解
Jan 28 PHP
PHP高并发和大流量解决方案整理
Dec 24 PHP
让你的PHP,APACHE,NGINX支持大文件上传
Mar 09 PHP
Thinkphp自定义代码生成工具及用法说明(附下载地址)
May 27 #PHP
thinkPHP连接sqlite3数据库的实现方法(附Thinkphp代码生成器下载)
May 27 #PHP
php使用pdo连接sqlite3的配置示例
May 27 #PHP
php使用number_format函数截取小数的方法分析
May 27 #PHP
php中关于长度计算容易混淆的问题分析
May 27 #PHP
Centos6.5和Centos7 php环境搭建方法
May 27 #PHP
thinkphp在低版本Nginx 下支持PATHINFO的方法分享
May 27 #PHP
You might like
php缩放gif和png图透明背景变成黑色的解决方法
2014/10/14 PHP
php封装的数据库函数与用法示例【参考thinkPHP】
2016/11/08 PHP
JavaScript 指导方针
2007/04/05 Javascript
jquery下div 的resize事件示例代码
2014/03/09 Javascript
使用Node.js实现一个简单的FastCGI服务器实例
2014/06/09 Javascript
jQuery select表单提交省市区城市三级联动核心代码
2014/06/09 Javascript
jQuery 1.9.1源码分析系列(十)事件系统之绑定事件
2015/11/19 Javascript
学习使用AngularJS文件上传控件
2016/02/16 Javascript
JavaScript常用判断写法大全(推荐)
2016/05/30 Javascript
jQuery插件ajaxFileUpload使用详解
2017/01/10 Javascript
js仿新浪微博消息发布功能
2017/02/17 Javascript
基于JavaScript实现焦点图轮播效果
2017/03/27 Javascript
Bootstrap Table 删除和批量删除
2017/09/22 Javascript
JavaScript实现的贝塞尔曲线算法简单示例
2018/01/30 Javascript
详解vue axios二次封装
2018/07/22 Javascript
微信小程序自定义键盘 内部虚拟支付
2018/12/20 Javascript
JS实现判断有效的数独算法示例
2019/02/25 Javascript
微信小程序学习笔记之函数定义、页面渲染图文详解
2019/03/28 Javascript
优雅的处理vue项目异常实战记录
2019/06/05 Javascript
Vue实现回到顶部和底部动画效果
2019/07/31 Javascript
[05:40]DOTA2荣耀之路6:Wings最后进攻
2018/05/30 DOTA
跟老齐学Python之不要红头文件(1)
2014/09/28 Python
python实现根据月份和日期得到星座的方法
2015/03/27 Python
python之matplotlib学习绘制动态更新图实例代码
2018/01/23 Python
python爬虫爬取淘宝商品信息
2018/02/23 Python
浅谈pandas中DataFrame关于显示值省略的解决方法
2018/04/08 Python
python样条插值的实现代码
2018/12/17 Python
Python数据报表之Excel操作模块用法分析
2019/03/11 Python
pandas read_excel()和to_excel()函数解析
2019/09/19 Python
python读取当前目录下的CSV文件数据
2020/03/11 Python
python使用自定义钉钉机器人的示例代码
2020/06/24 Python
python爬虫利器之requests库的用法(超全面的爬取网页案例)
2020/12/17 Python
GNC健安喜美国官网:美国第一营养品牌
2016/07/22 全球购物
罗兰·穆雷官网:Roland Mouret
2018/09/28 全球购物
公司承诺书格式
2014/05/21 职场文书
毕业生求职信
2014/06/10 职场文书