我是PHP新手,並且修改了http://www.techrepublic.com/article/create-a-dynamic-photo-gallery-with-php-in-three-steps/中的一個腳本,該腳本在目錄中生成了一張圖像表以及一些附帶的EXIF數據。唯一的問題是代碼沒有顯示EXIF數據。即使是原始的源代碼也會發生這種情況。我對發生的事情的最好猜測是,原始源代碼中的某些內容已陳舊過時,並且不再受現代PHP支持。我已確保我的服務器啓用了EXIF。PHP EXIF數據不起作用
下面的代碼:
<table>
<?php
// define directory path
$dir = "path/to/directory";
// iterate through files
// look for JPEGs
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false) {
if (preg_match("/.jpg/", $file)) {
// read EXIF headers
$exif = exif_read_data($file, 0, true);
// get image
echo "<tr><td rowspan='3'><img src='$dir/$file'></td>";
// get file name
echo "<th>Title</th><td>" . $exif['FILE']['FileName'] . "</td></tr>";
// get timestamp
echo "<tr><th>Year</th><td>" . $exif['IFD0']['DateTime'] . "</td></tr>";
// get image dimensions
echo "<tr><th>Description</th><td>" . $exif['IFD0']['Comments'] . "</td></tr>";
}
}
closedir($dh);
}
}
?>
</table>
編輯:我也碰到下面的錯誤日誌:
20160815T185355: benxd.me/art/gallery.php
PHP Warning: exif_read_data(): Unable to open file in /hermes/walnaweb01a/b893/pow.hdemoras/htdocs/benxd/art/gallery.php on line 21
PHP Warning: exif_read_data(): Unable to open file in /hermes/walnaweb01a/b893/pow.hdemoras/htdocs/benxd/art/gallery.php on line 21
PHP Warning: exif_read_data(): Unable to open file in /hermes/walnaweb01a/b893/pow.hdemoras/htdocs/benxd/art/gallery.php on line 21
PHP Warning: exif_read_data(): Unable to open file in /hermes/walnaweb01a/b893/pow.hdemoras/htdocs/benxd/art/gal
在我的代碼行21是$exif = exif_read_data($file, 0, true);
你是否檢查'$ exif'和閱讀'exif_read_data()函數'的文檔? –
圖像是否有exif數據? – Reeno
是的,我已經閱讀了php.net的文檔,但除了我見過的例子之外,它對我來說並沒有多大意義。 – Ben393