gewusst wie: berechnen einer Differenz zwischen zwei Zend_Date Objekte in Monaten
Ich habe zwei Objekte von Zend_Date
Klasse und ich möchte, um die Differenz zu ermitteln zwischen Ihnen in vollen Kalender Monate.. Wie kann ich dies tun?
<?php
$d1 = new Zend_Date('1 Jan 2008');
$d2 = new Zend_Date('1 Feb 2010');
$months = $d1->sub($d2)->get(Zend_Date::MONTH);
assert($months == -25); //failure here
Vielen Dank im Voraus!
Ich bin zu Ahnen, daß da der zurückgegebene Wert ist ein wahrscheinlich ein Zend_Date die
$months
var wird nie mehr dann 12 ... (oder 11, wenn es ist 0-basiert)InformationsquelleAutor yegor256 | 2010-06-13
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn ich die Dokumentation Lesen richtig, es gibt keine implementierte Funktionalität der erste Unterschied zwischen 2 Datumsangaben in Sekunden/Minuten/.../Monate/Jahre, so müssen Sie selbst berechnen. So etwas wie dies zu tun (weiß nicht, ob es dauert Schaltjahre, Sommerzeit und solche berücksichtigt):
gut, in diesem Beispiel geben Sie 25 für das Endergebnis... am Ende, es ist bis zu Sie zu entscheiden, für die beste Antwort =)
Sie kann nicht erhalten viel besser als dieses, ohne "komplizierte" Berechnungen (eine Funktion, die dafür ausgelegt)
Diese Gewohnheit Griff die Sommerzeit richtig. Es ist besser, Sie zu konvertieren, um julian Daten und nicht eine einfache Subtraktion.
InformationsquelleAutor robertbasic
Mit Hilfe von Zend_Measure_Time können Sie leicht jeder Unterschied, den Sie wollen:
Keine Notwendigkeit für komplizierte Berechnungen!
InformationsquelleAutor Luksurious
Für jedermann, das schaut, um eine freundliche Ausgabe (Tage, Stunden, Minuten, Sekunden) Teile ich meinen code hier:
Rufen Sie einfach das sowas wie:
InformationsquelleAutor Symen Timmermans
Vielen Dank, Ihre Antwort hat mir geholfen, das problem zu lösen robertbasic, das ist, was ich verwendet, um zu lösen mein code:
InformationsquelleAutor Justin Dominic
Können Sie es mithilfe einer einfachen Formel:
InformationsquelleAutor Hovsep
Ich verwendet, um zu tun dies, indem Sie die Differenz zwischen zwei Zend Termine, aber das ist sehr Komplex, da Elzo Valugi zu Recht Bemerkungen oben. Bessere Nutzung der menschlichen Ansatz. Ihr Alter in Jahren ist der Unterschied zwischen dem Jahr Teile der beiden Termine, wenn Ihre Geburt Tag schon, wenn nicht, ein Jahr weniger. Etwas ähnliches kann man mit Monaten.
InformationsquelleAutor tihe