欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

一段(根据文件头)检测文件类型的php代码

程序员文章站 2022-05-27 14:09:46
...
  1. //检测文件类型

  2. $filename = "11.jpg";
  3. //图片的路径
  4. $file = fopen($filename, "rb");

  5. $bin = fread($file, 2); //只读2字节
  6. fclose($file);
  7. $strInfo = @unpack("C2chars", $bin);

  8. $typeCode = intval($strInfo['chars1'].$strInfo['chars2']);
  9. $fileType = '';
  10. switch ($typeCode) {

  11. case 7790: $fileType = 'exe'; break;
  12. case 7784: $fileType = 'midi'; break;
  13. case 8297: $fileType = 'rar'; break;
  14. case 255216: $fileType = 'jpg'; break;
  15. case 7173: $fileType = 'gif'; break;
  16. case 6677: $fileType = 'bmp'; break;
  17. case 13780: $fileType = 'png'; break;
  18. default: echo'unknown';
  19. }
  20. echo'这是一个'.$fileType.' file:'.$typeCode;

  21. //linux下判断文件类型的函数 mime_content_type

  22. //这个函数也不错
  23. echo mime_content_type('test1.gif') . "\n";
  24. echo mime_content_type('test2.php');
  25. ?>
复制代码