您正在使用 IPV4 [18.97.9.168] 访问本站,您本次已经查看了 1 页
用户名: 密 码: 验证码:     用QQ登录本站
首页 软件 编程 笑话 知识 公告 台风 日历 计算器
[公益]保护绿色环境,构建和谐社会      

【腾讯云】2核2G云服务器新老同享 99元/年,续费同价,云服务器3年机/5年机限时抢购,低至 2.5折      
[公益] 地球是我家,绿化靠大家      
2025年 春 节 005
2025年 高 考 134
2025年 春 节 005
2026年 元 旦 342
 
您现在的位置:首页 >> PHP >> 内容
本类新增
本类热门
PHP 基于文件头的文件类型验证类函数
内容摘要: ?php/***检证文件类型类**@authorSilver*/classFileTypeValidation{//文件类型,不同的头信息privatestatic$_fileFormats=Array('jp2'='0000000C6A502020',br/'3gp'='0000002066747970','3gp5'='0000001866747970'......
<?php

/**

*检证文件类型类

*

*@authorSilver

*/

classFileTypeValidation

{

//文件类型,不同的头信息

privatestatic$_fileFormats=Array(

'jp2'=>'0000000C6A502020',<br/>'3gp'=>'0000002066747970',

'3gp5'=>'0000001866747970',

'm4a'=>'00000020667479704D3441',

'ico'=>'00000100',

'spl'=>'00000100',

'vob'=>'000001BA',

'cur'=>'00000200',

'wb2'=>'00000200',

'wk1'=>'0000020006040600',

'wk3'=>'00001A0000100400',

'wk4'=>'00001A0002100400',

'wk5'=>'00001A0002100400',

'123'=>'00001A00051004',

'qxd'=>'00004D4D585052',

'mdf'=>'010F0000',

'tr1'=>'0110',

'rgb'=>'01DA01010003',

'drw'=>'07',

'dss'=>'02647373',

'dat'=>'A90D000000000000',

'db3'=>'03',

'qph'=>'03000000',

'adx'=>'80000020031204',

'db4'=>'04',

'n'=>'FFFE0000',

'a'=>'FFFE0000',

'skf'=>'07534B46',

'dtd'=>'0764743264647464',

'db'=>'D0CF11E0A1B11AE1',

'pcx'=>'0A050101',

'mp'=>'0CED',

'doc'=>'D0CF11E0A1B11AE1',

'nri'=>'0E4E65726F49534F',

'wks'=>'FF00020004040554',

'pf'=>'1100000053434341',

'ntf'=>'4E49544630',

'nsf'=>'4E45534D1A01',

'arc'=>'41724301',

'pak'=>'5041434B',

'eth'=>'1A350100',

'mkv'=>'1A45DFA393428288',

'ws'=>'1D7D',

'gz'=>'1F8B08',

'tar.z'=>'1FA0',

'ain'=>'2112',

'lib'=>'213C617263683E0A',

'msi'=>'D0CF11E0A1B11AE1',

'vmdk'=>'4B444D',

'dsp'=>'23204D6963726F73',

'amr'=>'2321414D52',

'hdr'=>'49536328',

'sav'=>'24464C3240282329',

'eps'=>'C5D0D3C6',

'pdf'=>'25504446',

'fdf'=>'25504446',

'hqx'=>'2854686973206669',

'log'=>'2A2A2A2020496E73',

'ivr'=>'2E524543',

'rm'=>'2E524D46',

'rmvb'=>'2E524D46',

'ra'=>'2E7261FD00',

'au'=>'646E732E',

'cat'=>'30',

'evt'=>'300000004C664C65',

'asf'=>'3026B2758E66CF11',

'wma'=>'3026B2758E66CF11',

'wmv'=>'3026B2758E66CF11',

'wri'=>'BE000000AB',

'7z'=>'377ABCAF271C',

'psd'=>'38425053',

'sle'=>'414376',

'asx'=>'3C',

'xdr'=>'3C',

'dci'=>'3C21646F63747970',

'manifest'=>'3C3F786D6C2076657273696F6E3D',

'xml'=>'3C3F786D6C2076657273696F6E3D22312E30223F3E',

'msc'=>'D0CF11E0A1B11AE1',

'fm'=>'3C4D616B65724669',

'mif'=>'56657273696F6E20',

'gid'=>'4C4E0200',

'hlp'=>'4C4E0200',

'dwg'=>'41433130',

'syw'=>'414D594F',

'abi'=>'414F4C494E444558',

'aby'=>'414F4C4442',

'bag'=>'414F4C2046656564',

'idx'=>'5000000020000000',

'ind'=>'414F4C494458',

'pfc'=>'414F4C564D313030',

'org'=>'414F4C564D313030',

'vcf'=>'424547494E3A5643',

'bin'=>'424C4932323351',

'bmp'=>'424D',

'dib'=>'424D',

'prc'=>'424F4F4B4D4F4249',

'bz2'=>'425A68',

'tar.bz2'=>'425A68',

'tbz2'=>'425A68',

'tb2'=>'425A68',

'rtd'=>'43232B44A4434DA5',

'cbd'=>'434246494C45',

'iso'=>'4344303031',

'clb'=>'434F4D2B',

'cpt'=>'43505446494C45',

'cru'=>'43525553482076',

'swf'=>'465753',

'ctf'=>'436174616C6F6720',

'dms'=>'444D5321',

'adf'=>'5245564E554D3A2C',

'dvr'=>'445644',

'ifo'=>'445644',

'cdr'=>'52494646',

'vcd'=>'454E545259564344',

'mdi'=>'4550',

'e01'=>'4C5646090D0AFF00',

'evtx'=>'456C6646696C6500',

'qbb'=>'458600000600',

'cpe'=>'464158434F564552',

'flv'=>'464C56',

'aiff'=>'464F524D00',

'eml'=>'582D',

'gif'=>'47494638',

'pat'=>'47504154',

'gx2'=>'475832',

'sh3'=>'4848474231',

'tif'=>'4D4D002B',

'tiff'=>'4D4D002B',

'mp3'=>'494433',

'koz'=>'49443303000000',

'crw'=>'49491A0000004845',

'cab'=>'4D534346',

'lit'=>'49544F4C49544C53',

'chi'=>'49545346',

'chm'=>'49545346',

'jar'=>'5F27A889',

'jg'=>'4A47040E000000',

'kgb'=>'4B47425F61726368',

'shd'=>'68490000',

'lnk'=>'4C00000001140200',

'obj'=>'80',

'pdb'=>'ACED000573720012',

'mar'=>'4D41723000',

'dmp'=>'504147454455',

'hdmp'=>'4D444D5093A7',

'mls'=>'4D563243',

'mmf'=>'4D4D4D440000',

'nvram'=>'4D52564E',

'ppz'=>'4D534346',

'snp'=>'4D534346',

'tlb'=>'4D53465402000100',

'dvf'=>'4D535F564F494345',

'msv'=>'4D535F564F494345',

'mid'=>'4D546864',

'midi'=>'4D546864',

'dsn'=>'4D56',

'com'=>'EB',

'dll'=>'4D5A',

'drv'=>'4D5A',

'exe'=>'4D5A',

'pif'=>'4D5A',

'qts'=>'4D5A',

'qtx'=>'4D5A',

'sys'=>'FFFFFFFF',

'acm'=>'4D5A',

'ax'=>'4D5A900003000000',

'cpl'=>'DCDC',

'fon'=>'4D5A',

'ocx'=>'4D5A',

'olb'=>'4D5A',

'scr'=>'4D5A',

'vbx'=>'4D5A',

'vxd'=>'4D5A',

'386'=>'4D5A',

'api'=>'4D5A900003000000',

'flt'=>'76323030332E3130',

'zap'=>'4D5A90000300000004000000FFFF',

'sln'=>'4D6963726F736F66742056697375616C',

'jnt'=>'4E422A00',

'jtp'=>'4E422A00',

'cod'=>'4E616D653A20',

'dbf'=>'4F504C4461746162',

'oga'=>'4F67675300020000',

'ogg'=>'4F67675300020000',

'ogv'=>'4F67675300020000',

'ogx'=>'4F67675300020000',

'dw4'=>'4F7B',

'pgm'=>'50350A',

'pax'=>'504158',

'pgd'=>'504750644D41494E',

'img'=>'EB3C902A',

'zip'=>'504B0304140000',

'docx'=>'504B030414000600',

'pptx'=>'504B030414000600',

'xlsx'=>'504B030414000600',

'kwd'=>'504B0304',

'odt'=>'504B0304',

'odp'=>'504B0304',

'ott'=>'504B0304',

'sxc'=>'504B0304',

'sxd'=>'504B0304',

'sxi'=>'504B0304',

'sxw'=>'504B0304',

'wmz'=>'504B0304',

'xpi'=>'504B0304',

'xps'=>'504B0304',

'xpt'=>'5850434F4D0A5479',

'grp'=>'504D4343',

'qemu'=>'514649',

'abd'=>'5157205665722E20',

'qsd'=>'5157205665722E20',

'reg'=>'FFFE',

'sud'=>'52454745444954',

'ani'=>'52494646',

'cmx'=>'52494646',

'ds4'=>'52494646',

'4xm'=>'52494646',

'avi'=>'52494646',

'cda'=>'52494646',

'qcp'=>'52494646',

'rmi'=>'52494646',

'wav'=>'52494646',

'cap'=>'58435000',

'rar'=>'526172211A0700',

'ast'=>'5343486C',

'shw'=>'53484F57',

'cpi'=>'FF464F4E54',

'sit'=>'5374756666497420',

'sdr'=>'534D415254445257',

'cnv'=>'53514C4F434F4E56',

'cal'=>'B5A2B0B3B3B0A5B5',

'info'=>'E310000100000000',

'uce'=>'55434558',

'ufa'=>'554641C6D2C1',

'pch'=>'564350434830',

'ctl'=>'56455253494F4E20',

'ws2'=>'575332303030',

'lwp'=>'576F726450726F',

'bdr'=>'5854',

'zoo'=>'5A4F4F20',

'ecf'=>'5B47656E6572616C',

'vcw'=>'5B4D535643',

'dun'=>'5B50686F6E655D',

'sam'=>'5B7665725D',

'cpx'=>'5B57696E646F7773',

'cfg'=>'5B666C7473696D2E',

'cas'=>'5F434153455F',

'cbk'=>'5F434153455F',

'arj'=>'60EA',

'vhd'=>'636F6E6563746978',

'csh'=>'6375736800000002',

'p10'=>'64000000',

'dex'=>'6465780A30303900',

'dsw'=>'64737766696C65',

'flac'=>'664C614300000022',

'dbb'=>'6C33336C',

'acd'=>'72696666',

'ram'=>'727473703A2F2F',

'dmg'=>'78',

'lgc'=>'7B0D0A6F20',

'lgd'=>'7B0D0A6F20',

'pwi'=>'7B5C707769',

'rtf'=>'7B5C72746631',

'psp'=>'7E424B00',

'wab'=>'9CCBCB8D1375D211',

'wpf'=>'81CDAB',

'png'=>'89504E470D0A1A0A',

'aw'=>'8A0109000000E108',

'hap'=>'91334846',

'skr'=>'9501',

'gpg'=>'99',

'pkr'=>'9901',

'qdf'=>'AC9EBD8F0000',

'pwl'=>'E3828596',

'dcx'=>'B168DE3A',

'tib'=>'B46E6844',

'acs'=>'C3ABCDAB',

'lbk'=>'C8007900',

'class'=>'CAFEBABE',

'dbx'=>'CFAD12FE',

'dot'=>'D0CF11E0A1B11AE1',

'pps'=>'D0CF11E0A1B11AE1',

'ppt'=>'D0CF11E0A1B11AE1',

'xla'=>'D0CF11E0A1B11AE1',

'xls'=>'D0CF11E0A1B11AE1',

'wiz'=>'D0CF11E0A1B11AE1',

'ac_'=>'D0CF11E0A1B11AE1',

'adp'=>'D0CF11E0A1B11AE1',

'apr'=>'D0CF11E0A1B11AE1',

'mtw'=>'D0CF11E0A1B11AE1',

'opt'=>'D0CF11E0A1B11AE1',

'pub'=>'D0CF11E0A1B11AE1',

'rvt'=>'D0CF11E0A1B11AE1',

'sou'=>'D0CF11E0A1B11AE1',

'spo'=>'D0CF11E0A1B11AE1',

'vsd'=>'D0CF11E0A1B11AE1',

'wps'=>'D0CF11E0A1B11AE1',

'ftr'=>'D20A0000',

'arl'=>'D42A',

'aut'=>'D42A',

'wmf'=>'D7CDC69A',

'efx'=>'DCFE',

'one'=>'E4525C7B8CD8A74D',

'rpm'=>'EDABEEDB',

'gho'=>'FEEF',

'ghs'=>'FEEF',

'wp'=>'FF575043',

'wpd'=>'FF575043',

'wpg'=>'FF575043',

'wpp'=>'FF575043',

'wp5'=>'FF575043',

'wp6'=>'FF575043',

'jfif'=>'FFD8FF',

'jpe'=>'FFD8FF',

'jpeg'=>'FFD8FF',

'jpg'=>'FFD8FF',

'mof'=>'FFFE23006C006900',

'ipa'=>'504B03040A',

);

/**

*检查文件类型

*

*@paramstring$filePath文件路径

*@paramstring$fileExt文件扩展名

*

*@returnboolean

*/

publicstaticfunctionvalidation($filePath,$fileExt)

{

//文件格式未知

if(!isset(self::$_fileFormats[$fileExt]))

{

returnfalse;

}

$length=strlen(self::$_fileFormats[$fileExt]);

$bin=self::_readFile($filePath,$length);

$fileHead=@unpack("H{$length}",$bin);

//判断文件头

if(strtolower(self::$_fileFormats[$fileExt])==$fileHead[1])

{

returntrue;

}

returnfalse;

}

/**

*读取文件内容

*

*@paramstring$filePath文件路径

*@paraminteger$size

*

*@returnstring

*/

privatefunction_readFile($filePath,$size)

{

$file=fopen($filePath,"rb");

$bin=fread($file,$size);

fclose($file);

return$bin;

}

}

?>

调用

复制代码代码如下:

require'./class_filetypevalidation.php';

//文件路径

$filePath="D:/test.png";

$x=FileTypeValidation::validation($filePath,'zip');

var_dump($x);

版权声明:本内容来源于网络,如有侵犯您的版权,请联系站长,本站收到您的信息后将及时处理。
上一篇:php实现以只读方式打开文件的方法

 

下一篇:php中10个不同等级压缩优化图片操作示例

发布日期:2024/9/30
手机扫二维码直达本页
发布时间:21:48:35
点  击:13
录  入:齐天大圣
相关文章
Baidu
YiJiaCMS 7.5.5 build241121(MSSQL) 闽ICP备05000814号-1
本空间由腾讯云(轻量应用服务器)提供,创宇云安全提供加速防护
运行时间载入中.....
知道创宇云安全