PHP判断上传文件类型的解决办法


Posted in PHP onOctober 20, 2015

分享给大家php判断上传文件类型的方法,大家一起学习学习。

/** 
* 读取文件前几个字节 判断文件类型 
* @return String 
*/ 
function checkTitle($filename){ 
  $file=fopen($filename, "rb"); 
  $bin=fread($file, 2); //只读2字节 
  fclose($file); 
  $strInfo =@unpack("c2chars", $bin); 
  $typeCode=intval($strInfo['chars1'].$strInfo['chars2']); 
  $fileType=''; 
  switch($typeCode){ 
    case 7790: 
      $fileType='exe'; 
    break; 
    case 7784: 
      $fileType='midi'; 
    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'.$typeCode; 
    break; 
  } 
  //Fix 
  if($strInfo['chars1']=='-1' && $strInfo['chars2']=='-40'){ 
    return 'jpg'; 
  } 
  if($strInfo['chars1']=='-119' && $strInfo['chars2']=='80'){ 
    return 'png'; 
  } 
  return $fileType; 
}

希望通过本文对大家学习php程序设计有所帮助。

PHP 相关文章推荐
详细介绍:Apache+PHP+MySQL配置攻略
Sep 05 PHP
php 获取本机外网/公网IP的代码
May 09 PHP
如何在symfony中导出为CSV文件中的数据
Oct 06 PHP
php 修改、增加xml结点属性的实现代码
Oct 22 PHP
PHP禁止个别IP访问网站
Oct 30 PHP
一个php生成16位随机数的代码(两种方法)
Sep 16 PHP
php魔术函数__call()用法实例分析
Feb 13 PHP
PHP JSON格式的中文显示问题解决方法
Apr 09 PHP
PHP命名空间和自动加载类
Apr 03 PHP
php编译安装php-amq扩展简明教程
Jun 25 PHP
PHP抽象类与接口的区别实例详解
May 09 PHP
php实现统计IP数及在线人数的示例代码
Jul 22 PHP
php上传大文件失败的原因及应对策略
Oct 20 #PHP
PHP中如何使用session实现保存用户登录信息
Oct 20 #PHP
PHP+jQuery翻板抽奖功能实现
Oct 19 #PHP
php生成动态验证码gif图片
Oct 19 #PHP
php批量删除超链接的实现方法
Oct 19 #PHP
php二维码生成
Oct 19 #PHP
部署PHP时的4个配置修改说明
Oct 19 #PHP
You might like
PHP 操作文件的一些FAQ总结
2009/02/12 PHP
PHP数组函数知识汇总
2016/05/12 PHP
php实现批量删除挂马文件及批量替换页面内容完整实例
2016/07/08 PHP
Laravel手动分页实现方法详解
2016/10/09 PHP
thinkphp3.2实现在线留言提交验证码功能
2017/07/19 PHP
PHP实现广度优先搜索算法(BFS,Broad First Search)详解
2017/09/16 PHP
Jquery动态更改一张位图的src与Attr的使用
2013/07/31 Javascript
intro.js 页面引导简单用法 分享
2013/08/06 Javascript
js 获取radio按钮值的实例
2013/08/17 Javascript
jQuery 获取、设置HTML或TEXT内容的两种方法
2014/05/23 Javascript
jQuery中innerHeight()方法用法实例
2015/01/19 Javascript
深入分析JSON编码格式提交表单数据
2015/06/25 Javascript
JS实现的仿淘宝交易倒计时效果
2015/11/27 Javascript
微信小程序 图片等比例缩放(图片自适应屏幕)
2016/11/16 Javascript
如何在Angular2中使用jQuery及其插件的方法
2017/02/09 Javascript
vue组件之间数据传递的方法实例分析
2019/02/12 Javascript
整理 node-sass 安装失败的原因及解决办法(小结)
2020/02/19 Javascript
python 如何快速找出两个电子表中数据的差异
2017/05/26 Python
Python爬虫实例爬取网站搞笑段子
2017/11/08 Python
Python实现多属性排序的方法
2018/12/05 Python
Python面向对象程序设计类变量与成员变量、类方法与成员方法用法分析
2019/04/12 Python
python实现弹跳小球
2019/05/13 Python
网易2016研发工程师编程题 奖学金(python)
2019/06/19 Python
pycharm 更改创建文件默认路径的操作
2020/02/15 Python
使用Python和百度语音识别生成视频字幕的实现
2020/04/09 Python
Python如何在bool函数中取值
2020/09/21 Python
如何基于pandas读取csv后合并两个股票
2020/09/25 Python
产品质量保证书
2014/04/29 职场文书
师德师风建设方案
2014/05/08 职场文书
一体化教学实施方案
2014/05/10 职场文书
2015年度党风廉政建设工作情况汇报
2015/01/02 职场文书
七年级数学教学反思
2016/02/17 职场文书
社区结对共建协议书
2016/03/23 职场文书
mysql获取指定时间段中所有日期或月份的语句(不设存储过程,不加表)
2021/06/18 MySQL
SQL写法--行行比较
2021/08/23 SQL Server
JavaScript最完整的深浅拷贝实现方式详解
2022/02/28 Javascript