我想提取照片“明星”使用PHP代码.jpg文件评级。我的目的是展示收视率最高的图像作为幻灯片的一部分。我发现,使用PHP_JPEG_Metadata_Toolkit_1.11我能够得到文件的评级,如果评级是从内部Vista的设置(右键 - >属性 - >详细信息 - >设置等级通过点击星星)通过读取返回的数组所述Metadata_Toolkit结果

$exif = get_EXIF_JPEG( $photodir . "/" . $filename );
$rating = $exif[0][18246]['Data'][0];

但是,如果我设置使用Adobe Bridge中的等级,我可以看到在Vista中的“明星”,但结果 $exif[0][18246]['Data'][0]返回空值。

可供阅读的收视率是PHP代码的应用通过Windows Vista和Adobe Bridge中?

有帮助吗?

解决方案 2

我发现的Adobe Bridge存储在比Vista JPEG文件不同的位置评级。见在建议的PHP代码中发现的细节后由Adobe CS3桥

读取文件评级集

其他提示

我就不清楚了,但你为什么不自己去找:

$exif = get_EXIF_JPEG( $photodir . "/" . $filename );
print_r($exif);

这将打印$exif的内容,我猜会很大,但你有时间,对不对? (查看源代码的Web浏览器,所以你可以看到它的格式正确。)向下钻取找到0键,然后键18246,然后关键数据,关键0,这是你已经找到了一个。现在搜索在其他评级可能。但愿这不是太难找。当你找到它,注意它的路径的。然后得到它:

// This is your Vista rating
$rating = $exif[0][18246]['Data'][0];
if ($rating == null) {
    // no Vista rating, so get the Bridge rating
    $rating = $exif[...fill in this path...];
}
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top