首页 / 网页编程 / PHP / php 读取文件头判断文件类型的实现代码
php代码实现读取文件头判断文件类型,支持图片、rar、exe等后缀。
案例:
复制代码 代码如下:
<?php $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;
案例:
复制代码 代码如下:
?>
//linux下php还有个函数可以判断文件类型
<?php
echo mime_content_type("11.gif") . "
";
echo mime_content_type("22.php");
?>