php读取文件头判断文件类型,支持图片(jpg,gif,png)、rar、exe等后缀。
代码:
<?php //读取文件头来判断文件类型 //by www.jb200.com $filename = "11.jpg"; //为图片的路径可以用d:/upload/11.jpg等绝对路径 $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: echo'unknown'; } echo'这是一个'.$fileType.' file:'.$typeCode; ?>
示例:
<?php //方法二 //用mime_content_type函数判断文件类型 echo mime_content_type('11.gif') . "n"; echo mime_content_type('22.php'); ?>