[英]PHP: Basic exiftool usage
我正在尝试在网络服务器上使用 exiftool(因为它具有所有图像标签和其他工具)。 perl 模块安装在 /bin/exiftool
test.jpg 是同一个目录,并且有 EXIF 数据。
<?php
#!/usr/bin/exiftool
$array = [];
eval(`$array=` . `exiftool -php -q test.jpg`);
print_r($array);
?>
$array 是空的。 我也试过:
eval(`$array=` . `exiftool -php -q test.jpg > output.txt`);
这将创建一个空的 output.txt 文件。
我觉得我有一些非常基本的错误,但无法解决。 想补充一下,我在共享主机上并具有 root/命令行访问权限。
没有更新:我还在挣扎。 我认为它与 cgi / perl 有关(或者我对此缺乏了解)
据我所知, exiftool
是一个 Perl 程序,因此是 PHP 的外部代码。 我认为eval
不能运行外部代码。 尝试exec
。
数据哈迪。
您可以为此使用exec()
function:
$exifToolPath = 'cgi-bin/exiftool';
$exifToolParams = '-G';
// Read EXIF from jpg
$img = 'test.jpg';
exec($exifToolPath.' '.$exifToolParams.' '.$img, $data);
var_dump(array_unique($data));
// Read EXIF from NEF
$img = 'test.NEF';
exec($exifToolPath.' '.$exifToolParams.' '.$img, $data);
// Read XMP
$img = 'test.xmp';
exec($exifToolPath.' '.$exifToolParams.' '.$img, $data);
sort($data);
var_dump(array_unique($data));
您还可以使用 composer 安装 exiftool 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.