zoukankan      html  css  js  c++  java
  • 一个简单的文件后缀获取——不是通过文件名,而是文件内容

    摘自原来的一个项目,特意提取出来,可能会有需要的人

    /**
     * 根据图片文件内容获取扩展名
     * @param $file 要处理的文件
     * @param $isstr 是否传的字符串:true=直接文件内容,false=文件地址
     * @return unknown_type
     */
    function get_img_ext($file = '', $isstr = true){
    	if(!$isstr){
    		//仅获取2字节
    		$file	=	file_get_contents($file, false, NULL, 0, 2);
    	}
    	//取文件前两个字节(二进制)
    	$bin	=	$file[0].$file[1];
    	//把2进制数转换为两个字符
    	$info	=	@unpack("C2chars", $bin);
    	//转换两个字节的字符为数字
    	$type	=	intval($info['chars1'].$info['chars2']);
    	$ext	=	'unknown';
    	//文件类型判断
    	switch($type){
    		case 7790:
    			$ext	=	'exe';
    			break;
    		case 7784:
    			$ext	=	'midi';
    			break;
    		case 8297:
    			$ext	=	'rar';
    			break;
    		case 255216:
    			$ext	=	'jpg';
    			break;
    		case 7173:
    			$ext	=	'gif';
    			break;
    		case 6677:
    			$ext	=	'bmp';
    			break;
    		case 13780:
    			$ext	=	'png';
    			break;
    	}
    	return $ext;
    }
    
  • 相关阅读:
    005 HTML+CSS(Class027
    004 HTML+CSS(Class024
    003 HTML+CSS(Class011
    002HTML+CSS(class007-010)
    001HTML+CSS(class001-006)
    021 vue路由vue-router
    020 Vue 脚手架CLI的使用
    019 Vue webpack的使用
    018 vue的watch属性
    017 vue的插槽的使用
  • 原文地址:https://www.cnblogs.com/ppoo24/p/1872971.html
Copyright © 2011-2022 走看看