zoukankan      html  css  js  c++  java
  • finfo_open函数不支持,通过二进制流获取文件类型

        public function getMime()
        {
            // $finfo = finfo_open(FILEINFO_MIME_TYPE);
            // return finfo_file($finfo, $this->filename);
    
            $fp=fopen($this->filename,'r');///实际是image/png
            $bin = fread($fp, 2); //只读2字节
            fclose($fp);
            $str_info = @unpack("C2chars", $bin);//Unpack data from binary string
            $type_code = intval($str_info['chars1'].$str_info['chars2']);// Get the integer value of a variable
            $file_type = "";
            switch ($type_code) {
                case 7790:
                 return   $file_type = 'exe';
                break;
                case 7784:
                return  $file_type = 'midi';
                break;
                case 8075:
                return    $file_type = 'zip';
                break;
                case 8297:
                return  $file_type = 'rar';
                break;
                case 255216:
                return  $file_type = 'jpg';
                break;
                case 7173:
                return  $file_type = 'gif';
                break;
                case 6677:
                return   $file_type = 'bmp';
                break;
                case 13780:
                return  $file_type = 'png';
                break;
                default:
                return  $file_type = 'unknown';
                break;
            }
    
        }
  • 相关阅读:
    第三章
    第二章
    第一章
    第九章 硬件抽象层:HAL
    第十章 嵌入式Linux的调试技术
    第八章 让开发板发出声音:蜂鸣器驱动
    第七章
    第六章
    第五章总结
    第四章 源代码的下载和编译
  • 原文地址:https://www.cnblogs.com/mengor/p/8119571.html
Copyright © 2011-2022 走看看