Ich habe eine Funktion auf einer PHP-Seite, die das Erstellungsdatum/die -zeit von Videodateien mit getid3 erfassen soll. Ich dachte, alles funktionierte gut und war bereit, diese Version ins Bett zu bringen, als ich (natürlich) alles noch einmal laufen ließ, um sicher zu sein, und endete mit einem Problem, das ich einfach nicht herausfinden kann.Objekteigenschaft wird nicht angezeigt
Das entsprechende Stück Code ist dies:
$getID3 = new getID3;
$ThisFileInfo = $getID3->analyze($file);
if ($ThisFileInfo["quicktime"]["moov"]["subatoms"][0]["creation_time_unix"]){
$createdate = new DateTime("@".strval($ThisFileInfo["quicktime"]["moov"]["subatoms"][0]["creation_time_unix"]));
}
else {
$createdate = new DateTime("@".strval($ThisFileInfo["quicktime"]["moov"]["subatoms"][0]["modify_time_unix"]));
}
$createdate->setTimeZone(new DateTimeZone('America/New_York'));
//var_dump($createdate);
$createdate = $createdate->date;
Wenn ich eine Datei mit diesem Teil verarbeiten erhalte ich eine Fehlermeldung, Notice: Undefined property: DateTime::$date in … line 179
(Dateipfad von mir entfernt). Allerdings weiß ich, dass dies nicht der Fall ist, denn wenn ich die var_dump
Zeile oben kommentieren, bekomme ich die Ausgabe object(DateTime)#3 (3) { ["date"]=> string(26) "2016-01-24 15:20:32.000000" ["timezone_type"]=> int(3) ["timezone"]=> string(16) "America/New_York" }
.
Es sieht sicherlich wie das DateTime-Objekt $createdate
hat eine Eigenschaft namens $date
, so bin ich mir nicht sicher, was vor sich geht, obwohl ich nehme an, es ist etwas in meiner Syntax. Kann mir jemand helfen, das zu klären?
http://stackoverflow.com/questions/14084222/why-cant-i-access-datetime-date-in-phps-datetime-class-is-it-a-bug TLDR '$ createdate-> format ('Ymd H: i: s'); ' – Steve