首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >PHP判断上传文件类型

PHP判断上传文件类型

作者头像
用户7657330
发布于 2020-08-14 07:18:52
发布于 2020-08-14 07:18:52
2K00
代码可运行
举报
文章被收录于专栏:程序生涯程序生涯
运行总次数:0
代码可运行
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
/**

* 读取文件前几个字节 判断文件类型

* @return string

**/
function checkFileType($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;
    }
    if($strInfo['chars1']=='-1' && $strInfo['chars2']=='-40'){
        return 'jpg';
    }
    if($strInfo['chars1']=='-119' && $strInfo['chars2']=='80'){
        return 'png';
    }
    return $fileType;
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/03/23 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
python干货——元组
👨‍🎓作者:Java学术趴 🏦仓库:Github、Gitee ✏️博客:CSDN、掘金、InfoQ、云+社区 🚫特别声明:原创不易,未经授权不得转载或抄袭,如需转载可联系小编授权。 🙏版权声明:文章里的部分文字或者图片来自于互联网以及百度百科,如有侵权请尽快联系小编。 ☠️每日毒鸡汤:这个社会是存在不公平的,不要抱怨,因为没有用!人总是在反省中进步的! 👋大家好!我是你们的老朋友Java学术趴。我今天又来喽!!今天继续给大家分享Python语言干货知识。 第七章 元组 7.1 元组的概念 元组是
Java学术趴
2022/06/01
6860
python干货——元组
Python干货——内置函数(2)
👨‍🎓作者:Java学术趴 🏦仓库:Github、Gitee ✏️博客:CSDN、掘金、InfoQ、云+社区 💌公众号:Java学术趴 🚫特别声明:原创不易,未经授权不得转载或抄袭,如需转载可联系小编授权。 🙏版权声明:文章里的部分文字或者图片来自于互联网以及百度百科,如有侵权请尽快联系小编。 👋大家好!我是你们的老朋友Java学术趴。任何的语言都离不开函数,都包括内置函数和自定义函数,函数的作用就是对功能进行封装以便于无效调用。 所谓内置函数就是可以直接拿过来使用的函数,Python已经帮我们内
Java学术趴
2022/06/04
1.3K0
Python干货——内置函数(2)
Python——列表
列表是python中最基础,最强大的数据结构之一。python的列表可以容纳任何东西,其中的元素可以没有任何关系。python的列表就像一个可以容纳万物的容器。但是需要注意,这个容器中的数据是有序的。 在Python 中,用方括号([])表示列表,并用逗号分隔其中的元素。下面是一个例子:
zy010101
2021/03/11
2.3K0
Python——列表
Python干货——内置函数
👨‍🎓作者:Java学术趴 🏦仓库:Github、Gitee ✏️博客:CSDN、掘金、InfoQ、云+社区 💌公众号:Java学术趴 🚫特别声明:原创不易,未经授权不得转载或抄袭,如需转载可联系小编授权。 🙏版权声明:文章里的部分文字或者图片来自于互联网以及百度百科,如有侵权请尽快联系小编。 👋大家好!我是你们的老朋友Java学术趴。任何的语言都离不开函数,都包括内置函数和自定义函数,函数的作用就是对功能进行封装以便于无效调用。 所谓内置函数就是可以直接拿过来使用的函数,Python已经帮我们内
Java学术趴
2022/06/04
8980
Python干货——内置函数
python干货——字典
👨‍🎓作者:Java学术趴 🏦仓库:Github、Gitee ✏️博客:CSDN、掘金、InfoQ、云+社区 💌公众号:Java学术趴 🚫特别声明:原创不易,未经授权不得转载或抄袭,如需转载可联系小编授权。 🙏版权声明:文章里的部分文字或者图片来自于互联网以及百度百科,如有侵权请尽快联系小编。微信搜索公众号Java学术趴联系小编。 ☠️每日毒鸡汤:这个社会是存在不公平的,不要抱怨,因为没有用!人总是在反省中进步的! 👋大家好!我是你们的老朋友Java学术趴。我今天又来喽!!今天继续给大家分享Python语
Java学术趴
2022/06/02
1K0
python干货——字典
列表常用操作
'''列表的方法 l.index() l.count() l.copy() l.insert() l.append() l.extend() l.pop() l.remove() l.clear() l.sort() l.reverse() ''' l = [1, 2, 'h', [3, 4, 'H']] print(len(l)) l1 = l.index('h', 2
汪凡
2018/05/29
6410
Python 基础一 (列表)
Python包含6中内建的序列,即列表、元组、字符串、Unicode字符串、buffer对象和 xrange 对象。最常见的是列表和元组。
数据STUDIO
2021/06/24
7950
Python内置容器(1)——列表,元组
---------------------------------------------------------------------------
py3study
2020/01/08
5160
干货!Python常用数据类型的基本操作(长文系列第一篇)
Python基础系列会将基础内容大致分为四到五个板块,每篇文章着重讲一方面,知识不会很难,主要是以小例子的形式解读,如果你已经入门Python,希望可以帮你温习一下;如果你想入门Python,希望可以帮你越过这个门槛。
奶糖猫
2020/07/31
7810
干货!Python常用数据类型的基本操作(长文系列第一篇)
Python学习杂记_5_列表常用操作
列表时用方括号括起来的一组元素值,是可变变量,可通过下表取值,也可以通过下表来修改值,列表中的元素是有序的,可以是不同的基本数据类型,如:
呆呆
2021/05/25
2940
Python中列表list常见操作
    切片主要就是针对获取列表中部分或者单个元素的方法,通过下标访问列表中的元素,下标从0开始计数
py3study
2020/01/07
1.8K0
Python学习笔记之list列表使用方法
列表是最基本的数据结构。列表中的元素被分配一个数字来索引。第一个元素索引为0,第二个元素索引为1,依次类推。 Python有六种内置的序列类型,但最常见的是列表和元组。
青山师
2023/05/05
2510
Python干货——se集合
👨‍🎓作者:Java学术趴 🏦仓库:Github、Gitee ✏️博客:CSDN、掘金、InfoQ、云+社区 💌公众号:Java学术趴 🚫特别声明:原创不易,未经授权不得转载或抄袭,如需转载可联系小编授权。 🙏版权声明:文章里的部分文字或者图片来自于互联网以及百度百科,如有侵权请尽快联系小编。微信搜索公众号Java学术趴联系小编。 ☠️每日毒鸡汤:这个社会是存在不公平的,不要抱怨,因为没有用!人总是在反省中进步的! 👋大家好!我是你们的老朋友Java学术趴。任何语言中都存在一些内置的数据结构,比如:集合、
Java学术趴
2022/06/05
5770
Python干货——se集合
python整型-浮点型-字符串-列表及内置函数(上)
转换字符串的大小写(只影响字母) lower  upper  capitalize  swapcase  title
suwanbin
2019/09/26
1.9K0
python整型-浮点型-字符串-列表及内置函数(上)
day06-列表
列表中的每个元素均会分配一个数字,用以记录位置,我们称之为 索引 (Indexes),索引值从 0 开始,依次往后计数。
似小陈吖
2023/11/01
2690
python干货——函数
👨‍🎓作者:Java学术趴 🏦仓库:Github、Gitee ✏️博客:CSDN、掘金、InfoQ、云+社区 💌公众号:Java学术趴 🚫特别声明:原创不易,未经授权不得转载或抄袭,如需转载可联系小编授权。 🙏版权声明:文章里的部分文字或者图片来自于互联网以及百度百科,如有侵权请尽快联系小编。 👋大家好!我是你们的老朋友Java学术趴。任何的语言都离不开函数,都包括内置函数和自定义函数,函数的作用就是对功能进行封装以便于无效调用。 9.1 函数的基础 函数就是一段含有特殊功能的代码块 使用函数完成
Java学术趴
2022/06/03
7510
python干货——函数
Python列表
可以使用列表推导式和条件语句来移除列表中所有值为"itheima"的元素。以下是示例代码:
kwan的解忧杂货铺
2024/07/31
4230
Python列表
Python列表之班荆道故
列表是python的基础数据类型之一 ,它是以[ ]括起来, 每个元素用' , '隔开而且可以存放各种数据类型: list列表的定义:
py3study
2020/01/19
4120
Python列表(list)的相关操作及方法
注意:在列表中元素的数据类型可以不同(灵活性)表中的元素类型可以是任意python中的基本数据类型或者是自定义的数据类型
用户7886150
2021/01/26
5.5K0
Python 基础
['我', '列表', '是', '这', '我', '列表', '是', '这']
iOSDevLog
2019/05/24
4890
相关推荐
python干货——元组
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档