exif_read_data() 返回 false,即使 jpeg 中存在元数据
exif_read_data() returning false even though there is metadata present in jpeg
出于某种原因 exif_read_data() returns 目录中的每个图像都为 false,即使我知道我所有的 jpeg 图像都具有元数据属性。
我绝不是 PHP 向导,所以也许我有语法错误,或者我只是遗漏了一些对于你们 PHP 向导来说相当明显的东西。
galleryData.metadata = <?php
$dir_path = "Assets/Images/portfolio/";
if (is_dir($dir_path)) {
$files = scandir($dir_path);
for ($i = 0; $i < count($files); $i++) {
$tempPath = $dir_path + $files[$i];
$metadata[$i] = exif_read_data($tempPath);
}
echo json_encode($metadata);
}
?>;
谢天谢地,我发现我没有正确组合字符串。下面是我固定的工作代码。
galleryData.metadata = <?php
$metadata = array();
if (is_dir($dir_path)) {
for ($i = 0; $i < count($files); $i++) {
$metadata[$i] = exif_read_data("{$dir_path}{$files[$i]}", null, true);
}
echo json_encode($metadata);
}
?>;
可能是一个解决方案,但需要更多信息真正的错误(错误消息?)
exif_read_data() 可能是错误的舞会 php 版本到版本:
Bug #75785 Many errors from exif_read_data
解决方案可能是使用
$img = new \Imagick(DSC01386.jpg);
$allProp = $img->getImageProperties();
$exifProp = $img->getImageProperties("exif:*");
The Imagick class,相当强大class(旋转等)。
该解决方案的完整故事here
出于某种原因 exif_read_data() returns 目录中的每个图像都为 false,即使我知道我所有的 jpeg 图像都具有元数据属性。
我绝不是 PHP 向导,所以也许我有语法错误,或者我只是遗漏了一些对于你们 PHP 向导来说相当明显的东西。
galleryData.metadata = <?php
$dir_path = "Assets/Images/portfolio/";
if (is_dir($dir_path)) {
$files = scandir($dir_path);
for ($i = 0; $i < count($files); $i++) {
$tempPath = $dir_path + $files[$i];
$metadata[$i] = exif_read_data($tempPath);
}
echo json_encode($metadata);
}
?>;
谢天谢地,我发现我没有正确组合字符串。下面是我固定的工作代码。
galleryData.metadata = <?php
$metadata = array();
if (is_dir($dir_path)) {
for ($i = 0; $i < count($files); $i++) {
$metadata[$i] = exif_read_data("{$dir_path}{$files[$i]}", null, true);
}
echo json_encode($metadata);
}
?>;
可能是一个解决方案,但需要更多信息真正的错误(错误消息?)
exif_read_data() 可能是错误的舞会 php 版本到版本: Bug #75785 Many errors from exif_read_data
解决方案可能是使用
$img = new \Imagick(DSC01386.jpg);
$allProp = $img->getImageProperties();
$exifProp = $img->getImageProperties("exif:*");
The Imagick class,相当强大class(旋转等)。
该解决方案的完整故事here