php 读取文件头断定文件类型的实现代码

    添加时间:2013-8-5 点击量:

    php代码实现读取文件头断定文件类型,支撑、rar、exe等后缀。


    例子:



    <?php ¥filename = 11.jpg;
    
    //为的路径可以用d:/upload/11.jpg等绝对路径
    ¥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: echounknown;
    }
    echo这是一个.¥fileType. file:.¥typeCode;
    ?>


    例2:



    <?php
    
    //linux下php还有个函数可以断定文件类型
    echo mime_content_type(11.gif) . \n;
    echo mime_content_type(22.php);
    ?>

    文艺不是炫耀,不是花哨空洞的文字堆砌,不是一张又一张的逆光照片,不是将旅行的意义转化为名牌包和明信片的物质展示;很多时候它甚至完全不美——它嘶吼、扭曲,它会痛苦地抽搐,它常常无言地沉默。——艾小柯《文艺是一种信仰》
    分享到: