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 相关文章推荐
PHP4实际应用经验篇(2)
Oct 09 PHP
怎样才能成为PHP高手?学会“懒惰”的编程
Dec 05 PHP
js下函数般调用正则的方法附代码
Jun 22 PHP
纯php打造的tab选项卡效果代码(不用js)
Dec 29 PHP
php中判断文件存在是用file_exists还是is_file的整理
Sep 12 PHP
PHP中替换换行符的几种方法小结
Oct 15 PHP
PHP 文件编程综合案例-文件上传的实现
Jul 03 PHP
PHP判断一个gif图片是否为动态图片的方法
Nov 19 PHP
php防止网站被刷新的方法汇总
Dec 01 PHP
PHP实现阳历到农历转换的类实例
Mar 07 PHP
PHP获取不了React Native Fecth参数的解决办法
Aug 26 PHP
PHP使用Redis实现防止大并发下二次写入的方法
Oct 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数组总结篇(一)
2008/09/30 PHP
php fckeditor 调用的函数
2009/06/21 PHP
PHP模拟登陆163邮箱发邮件及获取通讯录列表的方法
2015/03/07 PHP
Zend Framework实现将session存储在memcache中的方法
2016/03/22 PHP
php写一个函数,实现扫描并打印出自定目录下(含子目录)所有jpg文件名
2017/05/26 PHP
ASP.NET jQuery 实例13 原创jQuery文本框字符限制插件-TextArea Counter
2012/02/03 Javascript
javascript刷新父页面的各种方法汇总
2014/09/03 Javascript
超赞的动手创建JavaScript框架的详细教程
2015/06/30 Javascript
使用微信内置浏览器点击下拉框出现页面乱跳转现象(iphone),该怎么办
2016/01/04 Javascript
JS原型、原型链深入理解
2016/02/27 Javascript
jQuery实现简单倒计时功能的方法
2016/07/04 Javascript
AngularJS ng-bind-template 指令详解
2016/07/30 Javascript
scroll事件实现监控滚动条并分页显示(zepto.js)
2016/12/18 Javascript
AngularJS入门示例之Hello World详解
2017/01/04 Javascript
js模仿微信朋友圈计算时间显示几天/几小时/几分钟/几秒之前
2017/04/27 Javascript
详解自定义ajax支持跨域组件封装
2018/02/08 Javascript
vue 做移动端微信公众号采坑经验记录
2018/04/26 Javascript
Node.js Koa2使用JWT进行鉴权的方法示例
2018/08/17 Javascript
koa大型web项目中使用路由装饰器的方法示例
2019/04/02 Javascript
Node登录权限验证token验证实现的方法示例
2020/05/25 Javascript
详细介绍Python函数中的默认参数
2015/03/30 Python
python实现用户管理系统
2018/01/10 Python
使用Python处理BAM的方法
2018/09/28 Python
Python 忽略warning的输出方法
2018/10/18 Python
python re正则匹配网页中图片url地址的方法
2018/12/20 Python
在pycharm中使用git版本管理以及同步github的方法
2019/01/16 Python
css3闪亮进度条效果实现思路及代码
2013/04/17 HTML / CSS
乔丹诺(Giordano)酒庄德国官网:找到最好的意大利葡萄酒
2017/12/28 全球购物
俄罗斯一家时尚女装商店:Charuel
2019/12/04 全球购物
海蓝之谜英国官网:La Mer英国
2020/01/15 全球购物
JDO的含义
2012/11/17 面试题
大学四年个人自我小结
2014/03/05 职场文书
暗恋桃花源观后感
2015/06/12 职场文书
Python中request的基本使用解决乱码问题
2022/04/12 Python
搭建Yolov5服务器
2022/04/30 Servers
Apache SkyWalking 监控 MySQL Server 实战解析
2022/09/23 Servers