• 【PHP】安装php的exif扩展,获取图片拍摄相机型号、拍摄时间等信息


    一、安装exif扩展

     

    # cd /datas/package/php-5.6.20/ext/exif/
    
    # /datas/soft/php56/bin/phpize
    
    # ./configure --with-php-config=/datas/soft/php56/bin/php-config
    
    # make && make install
    
     
    
    # vim /datas/soft/php56/etc/php.ini   
    
    在相应的位置添加:
    
         extension = exif.so


    # systemctl reload php-fpm56

      

     查看扩展信息:

    # echo phpinfo();
    

    二、使用exif获取拍摄相机型号、拍摄时间等 

    echo "<pre>";
    
    var_dump(exif_read_data('./test.jpg'));
    

      

    各字段说明:

    "文件名"                =>        $exif[FILE][FileName],
    "文件类型"                =>        $imgtype[$exif[FILE][FileType]],
    文件格式"                =>        $exif[FILE][MimeType],
    "文件大小"                =>        $exif[FILE][FileSize],
    "时间戳"                =>        date("Y-m-d H:i:s",$exif[FILE][FileDateTime]),
    "图片说明"                =>        $exif[IFD0][ImageDescription],
    "制造商"                =>        $exif[IFD0][Make],
    "型号"                =>        $exif[IFD0][Model],
    "方向"                =>        $Orientation[$exif[IFD0][Orientation]],
    "水平分辨率"        =>        $exif[IFD0][XResolution].$ResolutionUnit[$exif[IFD0][ResolutionUnit]],
    "垂直分辨率"        =>        $exif[IFD0][YResolution].$ResolutionUnit[$exif[IFD0][ResolutionUnit]],
    "创建软件"                =>        $exif[IFD0][Software],
    "修改时间"                =>        $exif[IFD0][DateTime],
    "作者"                        =>        $exif[IFD0][Artist],
    "YCbCr位置控制"        =>        $YCbCrPositioning[$exif[IFD0][YCbCrPositioning]],
    "版权"                        =>        $exif[IFD0][Copyright],
    "摄影版权"                =>        $exif[COMPUTED][Copyright.Photographer],
    "编辑版权"                =>        $exif[COMPUTED][Copyright.Editor],
    "Exif版本"                =>        $exif[EXIF][ExifVersion],
    "FlashPix版本"        =>        "Ver. ".number_format($exif[EXIF][FlashPixVersion]/100,2),
    "拍摄时间"                =>        $exif[EXIF][DateTimeOriginal],
    "数字化时间"        =>        $exif[EXIF][DateTimeDigitized],
    "拍摄分辨率高"        =>        $exif[COMPUTED][Height],
    "拍摄分辨率宽"        =>        $exif[COMPUTED][Width],
    "光圈"                        =>        $exif[EXIF][ApertureValue],
    "快门速度"                =>        $exif[EXIF][ShutterSpeedValue],
    "快门光圈"                =>        $exif[COMPUTED][ApertureFNumber],
    "最大光圈值"        =>        "F".$exif[EXIF][MaxApertureValue],
    "曝光时间"                =>        $exif[EXIF][ExposureTime],
    "F-Number"                =>        $exif[EXIF][FNumber],
    "测光模式"                =>        GetImageInfoVal($exif[EXIF][MeteringMode],$MeteringMode_arr),
    "光源"                        =>        GetImageInfoVal($exif[EXIF][LightSource], $Lightsource_arr),
    "闪光灯"                =>        GetImageInfoVal($exif[EXIF][Flash], $Flash_arr),
    "曝光模式"                =>        ($exif[EXIF][ExposureMode]==1?"手动":"自动"),
    "白平衡"                =>        ($exif[EXIF][WhiteBalance]==1?"手动":"自动"),
    "曝光程序"                =>        $ExposureProgram[$exif[EXIF][ExposureProgram]],
    "曝光补偿"                =>        $exif[EXIF][ExposureBiasValue]."EV",
    "ISO感光度"                =>        $exif[EXIF][ISOSpeedRatings],
    " 分量配置"                =>        (bin2hex($exif[EXIF][ComponentsConfiguration])=="01020300"?"YCbCr":"RGB"),//'0x04,0x05,0x06,0x00'="RGB" '0x01,0x02,0x03,0x00'="YCbCr"
    "图像压缩率"        =>        $exif[EXIF][CompressedBitsPerPixel]."Bits/Pixel",
    "对焦距离"                =>        $exif[COMPUTED][FocusDistance]."m",
    "焦距"                        =>        $exif[EXIF][FocalLength]."mm",
    "等价35mm焦距"        =>        $exif[EXIF][FocalLengthIn35mmFilm]."mm",
    

      

     

     

    参考文献:

    https://www.imooc.com/article/32948?block_id=tuijian_wz

    https://blog.csdn.net/wang178yang/article/details/79480810

     

     

     

    得意时做事,失意时读书
  • 相关阅读:
    ASP.NET 高级编程基础第七篇—开发原则2
    反垃圾邮件引发的Email格式变异!
    .NET框架程序设计生成,打包,部署及管理应用程序与类型(2:Assembly的生成以及版本信息)
    .NET框架程序设计NET框架开发平台的体系架构概览(FCL,CTS,CLS)
    .NET框架程序设计生成,打包,部署及管理应用程序与类型(1:程序集的PE格式)
    [电影]蝴蝶效应
    .NET框架程序设计.NET框架开发平台的体系架构概览(.NET程序本质)
    [转贴]浅析.NET Framework对PE文件格式的扩展
    [MSDN今日讲座]Whidbey 开发系列讲座二:Visual Studio 2005团对开发系统简介
    郁闷!我的Gmail邮箱的问题!
  • 原文地址:https://www.cnblogs.com/lanse1993/p/13229238.html
Copyright © 2020-2023  润新知