Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php 根据二进制(文件头)信息判断文件类型的方法

php 根据二进制(文件头)信息判断文件类型的方法

WBOY
WBOYasal
2016-07-25 09:00:521053semak imbas
  1. $files = array('./test.jpg', 'test.png');
  2. $fileTypes = array(
  3. 7790 => 'exe',
  4. 7784 => 'midi',
  5. 8075 => 'zip',
  6. 8297 => 'rar',
  7. 225216 => 'jpg',
  8. 7173 => 'gif',
  9. 6677 => 'bmp',
  10. 13780 => 'png',
  11. );
  12. foreach($files as $file) {
  13. $fp = fopen($file, 'rb');
  14. $bin = fread($fp, 2); // 只读头两个字节
  15. fclose($fp);
  16. $strInfo = @unpack("C2chars", $bin);
  17. $typeCode = intval($strInfo['chars1'].$strInfo['chars2']);
  18. $fileType = isset($fileTypes[$typeCode]) ? $fileTypes[$typeCode] : 'unknown';
  19. echo $file , ' type : ', $fileType, ' code : ', $fileType, '
    ';
  20. }
复制代码


Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn