我有一個PHP腳本,其中一些代碼獲取從相片的EXIF數據到一個變量如下:改變數組的內容在PHP
$exif_data = get_EXIF_JPEG($filename);
注:函數「get_EXIF_JPEG($文件名) '從'包含'腳本中調用。
我然後使用打印變量的內容,找出一定的EXIF信息是如何在變量中:
var_dump ($exif_data);
有興趣的人看到變量的完整內容,它可以使用可見此鏈接 - http://uko.com/testexif2/phptest.php
結果中有一部分包含照相機記錄的照片大小。該部分的內容是:
[40962]=> array(9) { ["Tag Number"]=> int(40962) ["Tag Name"]=> string(17) "Pixel X Dimension" ["Tag Description"]=> string(0) "" ["Data Type"]=> int(4) ["Type"]=> string(7) "Numeric" ["Units"]=> string(6) "pixels" ["Data"]=> array(1) { [0]=> int(4000) } ["Text Value"]=> string(11) "4000 pixels" ["Decoded"]=> bool(true) }
我想改變這個內容來改變記錄圖像的大小,發現了一些信息這導致我嘗試這種代碼($ new_width是在腳本的開頭指定):
$exif_data[40962]['Data'][0] = $new_width;
$exif_data[40962]['Text Value'] = $new_width . ' pixels';
這顯然是不對的,因爲它不會改變現有的數據,它的作用是在變量保存的數據的末尾添加信息。
任何人都可以告訴我必要的代碼應該是什麼 - 或者指向我可以獲取某些信息的方向。
你想做什麼?調整照片大小並更新其exif數據或什麼? –
你明白了 - 最終我想調整照片大小並更新exif數據。我有一個腳本來調整大小,幷包含一些代碼,這些代碼會將修改後的數據重新寫入照片。該查詢是關於在重寫它之前改變從照片中讀取的數據的正確部分。 – PhotoNewbie
關鍵'40962'不在你已經顯示的_full_數組的最上層 - 所以'$ exif_data [40962] ['Data'] [0]'_將會_添加一個新的條目到你的數組中。找出鍵__ove_'40962',然後更新_correct_元素。 – CBroe