在php中读取exif数据时未定义标签


undefined tags when read exif data in php

我正在尝试使用php函数exif_read_data读取图像的EXIF数据,但如果它返回一些UndefinedTag这些标签是什么,为什么它是未定义的

这是我使用的代码

$exif = exif_read_data('3.jpeg', 0, true );
foreach($exif['IFD0'] as $key => $section)
{
    echo "$key . $section <br >";
}

it return

UndefinedTag:0x0025 . 14 Dec 2016  
UndefinedTag:0x0028 . Instruction 
UndefinedTag:0x002D . Referance Service
UndefinedTag:0x0050 . Rory McCrossan 
UndefinedTag:0x0055 . John 
UndefinedTag:0x005A . Tokyo
UndefinedTag:0x005F . Tokyo 
UndefinedTag:0x0064 . 3166 
UndefinedTag:0x0065 . japan 
UndefinedTag:0x006E . Climix  
UndefinedTag:0x0074 . Copyright 2016 
ImageDescription . SuzoPark
Software . Picasa 
Exif_IFD_Pointer . 744 
GPS_IFD_Pointer . 840

尝试在进入foreach循环之前转储$exif变量的内容,以查看键'IFD0'是否存在,然后再尝试像在代码中那样在foreach循环中访问它。但是,这段代码应该为您打印所有标记:

$exif = exif_read_data('3.jpeg', 0, true );
//print_r($exif);
//OR var_dump($exif); 
foreach ($exif as $key => $section) {
   foreach ($section as $name => $val) {
    echo "$key.$name: $val<br />'n";
   }
}

关于exif_read_data()函数的PHP手册在这里给出了更多细节:http://php.net/manual/en/function.exif-read-data.php。古德勒克!

注意:取消注释print_r($exif)或var_dump($exif)来检查$exif变量