Get "Take Date" eines Fotos anstelle von "Modified Date" mit PHP exif_read_data

8

Ich erhalte das Erstellungsdatum von einem Foto mit der PHP-Funktion exif_read_data (siehe Code unten). Die Daten, die von Fotos stammen, die nicht geändert wurden, geben "Aufnahmedatum" zurück. Diejenigen, die geändert wurden - "Date Modified". Gibt es eine Möglichkeit, das Aufnahmedatum zu erhalten, ohne das Feld "Datum geändert" zu beachten?

%Vor%

Danke.

Bearbeiten: Ich denke $ exif_data ['DateTime'] verwendet das erste verfügbare Datumsfeld. Da unmodifizierte Bilder den gleichen Wert für "Datum geändert" und "Datum genommen" hatten, wurde in meinem Fall immer "Änderungsdatum" abgerufen.

    
Dima 02.12.2012, 21:54
quelle

5 Antworten

11

Okay, ich weiß, dass es ein bisschen spät ist, da diese Frage vor einem Jahr gestellt wurde, aber ich schreibe diese Antwort, weil ich die gleiche Frage hatte und mein Mann mir einen Trick oder zwei gezeigt hat, wie man die Antwort bekommt Ich teile es. Schreiben Sie ein PHP-Skript, um das exif_read_data-Array auszugeben, und Sie werden alle möglichen interessanten Informationen finden. Dies (unten) wurde in der Befehlszeile mit stdout unter Verwendung von print_r () gedruckt. Wenn Sie nach unten scrollen, sehen Sie zwei sehr interessante Schlüssel:   [DateTime] = & gt; 2011: 06: 21 17:50:57 und [DateTimeOriginal] = & gt; 2011: 06: 04 08:56:22

Ich hoffe, dass diese Ihnen helfen werden, zu bekommen, was Sie brauchen.

%Vor%     
paidforbychrist 19.07.2014 02:25
quelle
6

Die Lösung ist einfacher als ich dachte. Ich habe mich auf ein falsches Tag bezogen. Um das Datum zu erhalten, benutze:

$ exif_data ['DateTimeOriginal'];

    
Dima 03.12.2012 02:44
quelle
2
%Vor%

gibt

aus %Vor%

Quelle Ссылка

    
Marek Prymula 02.12.2012 22:04
quelle
2

DateTime info existiert im Image File Directory (IFD), welches eine wiederkehrende Datenstruktur innerhalb der EXIF ​​ -Daten darstellt. Um das Datum des Fotos zu erhalten und als ein natives php DateTime Objekt darzustellen, müssen Sie es von rechts holen IFD-Abschnitt:

%Vor%

Danach können Sie die Exif DateTime Daten einfach validieren:

%Vor%     
edigu 03.12.2012 02:02
quelle
0

Ich bin mir nicht sicher, wo Sie Ihre Informationen erhalten haben, aber die exif Informationen hängen vom Bild oder dem aufgenommenen Gerät ab. Auch wenn es modifiziert ist, kann das Exif gestreift werden

Beispiel

%Vor%

Dies ist eine gültige exif Information, enthält jedoch nicht

  • Datetime
  • DateTaken
  • DateModified
  • DateTimeOriginal
  • DateTimeDigitated

Du musst deine Strategie wirklich überdenken und mit FileDateTime arbeiten, das ist die einzige Information, die dir immer bekannt ist

    
Baba 02.12.2012 22:12
quelle

Tags und Links