Ziel ist es, zwei Daten zu vergleichen.DateTime zwei Daten vergleichen
Ich habe ein DateTime-Objekt in meiner Db-Tabelle unter Timestamp-Spalte gespeichert. Ich verwende Doctrine, um das Datum abzurufen. Sobald das Datum aus meiner Datenbank abgerufen wurde, sah es folgendermaßen aus: var_dump
;
array(1) {
[0]=>
array(1) {
["timestamp"]=>
object(DateTime)#321 (3) {
["date"]=>
string(26) "2016-08-03 11:03:36.000000"
["timezone_type"]=>
int(3)
["timezone"]=>
string(13) "Europe/London"
}
}
}
das abgerufene Objekt wurde nun zu einer $result
Variablen zugewiesen ich diese $result[0][timestamp]
tat, um das DateTime
Objekt zu erhalten.
die aktuellen Daten abzurufen ich diese $date1 = $result->format('Y-m-d H:i:s');
diesen So, jetzt
documentation nach tat, dass ich das Datum eine Zeile in meine db eingefügt wurde abgerufen haben muß ich ein anderes Datum als die aktuellen Uhrzeit an.
dh:
$date1 = $result->format('Y-m-d H:i:s');
$date2 = new DateTime();
$test = $date1->diff($date2);
nach diff dieser documentation
dies mir diesen Fehler gibt:
Error: Call to a member function diff() on a non-object
Jede Idee, warum ich diese Fehlermeldung erhalten, sieht aus wie die Dinge tue das Recht Weg nach den Docks. Vielleicht gibt es einen anderen Weg, um zwei Daten OPP Weg zu diff.
UPDATE:
Ok, so ja, es ist wahr, wenn ich $date1 = $result->format('Y-m-d H:i:s');
sein nicht mehr ein Objekt sein ein stiring verwenden.
So, jetzt sieht mein Code wie folgt aus:
$ test = $ result-> diff (neue Datetime()); var_dump ($ test);
es gibt DateInterval Objekt aber was ich mache aus ihm heraus:
object(DateInterval)#317 (15) {
["y"]=>
int(0)
["m"]=>
int(0)
["d"]=>
int(0)
["h"]=>
int(1)
["i"]=>
int(27)
["s"]=>
int(5)
["weekday"]=>
int(0)
["weekday_behavior"]=>
int(0)
["first_last_day_of"]=>
int(0)
["invert"]=>
int(0)
["days"]=>
int(0)
["special_type"]=>
int(0)
["special_amount"]=>
int(0)
Was ich brauche, wenn Date1 diff Date2> als 30 Minuten ich einige Maßnahmen ergreifen wollen.
'$ result-> diff ($ date2)' –