php里的unpack函数判断上传文件的类型
$filename = "F:\msn.rar";
$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 "this is a(an) ".$fileType." file:".$typeCode;
exit;声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: PHP入门篇
- 下一篇: golang中x.(type)只能在switch中使用
