我用来显示图片的exif数据。
这是代码
<?php
$filename = "http://www.rallyfun.net/images/20140921231511_img_7369.jpg";
$exif = exif_read_data($filename, 0, true);
echo "Exposure: " . $exif["EXIF"]["ExposureTime"] . " sec.<br />";
echo "F: " . $exif["EXIF"]["FNumber"] . "<br />";
echo "ISO: " . $exif["EXIF"]["ISOSpeedRatings"] . "<br />";
?>
这是结果:
Exposure: 1/6400 sec.
F: 63/10 sec.
ISO: 1000
除了光圈外,结果还可以:它必须显示为(在这种情况下)6.3所以我需要将第一个数字(63)除以&#34; /&#34;之后的数字。 (10)。
如何?
答案 0 :(得分:0)
尝试以下方法:
$n = $exif["EXIF"]["FNumber"];
$whole = floor($n); // 63
$fraction = $n - $whole; // .10
$result=$whole/$fraction;
答案 1 :(得分:0)
你可以使用explode。
$tmp = explode('/', str_replace(' sec.', '', $exif["EXIF"]["FNumber"]));
echo "F: " . ($tmp[0]/$tmp[1]) . "sec<br />";
答案 2 :(得分:0)
您可以使用此代码显示光圈:
preg_match('/([0-9]+)\/([0-9]+)/',$exif["EXIF"]["FNumber"],$m);
if($m[1] && $m[2])
{
$newaperture = $m[1]/$m[2];
echo $newaperture;
}