dateAdd
Gerhard
- php
Gibt es in php eine funktion ähnlich der funktion
DateAdd(interval,number,date)
in asp?
Diese funktion liefert ein datum zurück, das zu "date" "number" x "interval" addiert bzw. subtrahiert
Diese Funktion ist auch intelligent, sie prüft auf anzahl der tage eines monats und schaltjahr,...
in interval kann man reinschreiben Y,m,d,w,h,s,...
<!-- Beispiel1 beginn --> Add one month to January 31, 2000 //2000=Schaltjahr
document.write(DateAdd("m",1,"31-Jan-00"))
Output:2/29/2000
<!-- Beispiel1 ende -->
<!-- Beispiel2 beginn --> Add one month to January 31, 2001
document.write(DateAdd("m",1,"31-Jan-01"))
Output:2/28/2001
<!-- Beispiel2 ende -->
Hat diese Funktion vielleicht schon jemand ausprogrammiert oder kennt sie? Es wäre wirklich verdammt viel Arbeit, sie jetzt selbst ausprogrammieren zu müssen.
danke im voraus
gerhard
Hallo Gerhard,
... Es wäre wirklich verdammt viel Arbeit, sie jetzt selbst ausprogrammieren zu müssen.
wirklich?
function DateAdd($interval,$nummer,$date)
{
$date=$date+($interval*$nummer);
return date("d/m/Y",$date);
}
$date ist der Timestamp
$nummer ist die Anzahl an Sekunden
$interval ist Dein Interval
http://de.php.net/manual/de/ref.datetime.php
Gruß aus Berlin!
eddi
ok so einfach hab ich mir das natürlich nicht vorgestellt
danke
hi,
function DateAdd($interval,$nummer,$date)
{
$date=$date+($interval*$nummer);
return date("d/m/Y",$date);
}
was spricht gegen die simple verwendung von strtotime stattdessen?
diese funktion berücksichtigt nebenbei wie gefordert auch noch schaltjahre, sommer-/winterzeitwechsel, etc.
ob deine funktion das genauso berücksichtigt, wage ich zumindest anzuzweifeln. gerade der wechsel sommer-/winterzeit et vice versa bringt des öfteren probleme mit sich, wenn man einfach feste sekundenintervalle auf einen timestamp addiert.
http://de.php.net/manual/de/function.strtotime.php
gruß,
wahsaga
hi,
function DateAdd($interval,$nummer,$date)
{
$date=$date+($interval*$nummer);
return date("d/m/Y",$date);
}was spricht gegen die simple verwendung von strtotime stattdessen?
A: ... Es wäre wirklich verdammt viel Arbeit, sie jetzt selbst ausprogrammieren zu müssen.
B: wirklich?
So fehldeut bar.
diese funktion berücksichtigt nebenbei wie gefordert auch noch schaltjahre, sommer-/winterzeitwechsel, etc.
ob deine funktion das genauso berücksichtigt, wage ich zumindest anzuzweifeln.
Mach uns alle schlau ;) Liefert date("d/m/Y"); immer das richtige Ergebnis? Nicht? Dann auwia! Denn strtotime bedient sich leider auch nur des Timestamps und müste mit date() umgeformt werden.
Nachdem strtotime() schon, der Funktion DateAdd ungleich kein Interval, Nummer, Date hat, muß sie also zusätzlich eh noch mal durch date() "nachbehandelt" werden.
"Schön' Dank füa't Jespreech!" ("Sacht der Berlina" ;)
Gruß aus Berlin!
eddi
hi,
Liefert date("d/m/Y"); immer das richtige Ergebnis?
davon würde ich ausgehen.
der unix-timestamp dieser sekunde, in der du diese zeile liest, ist auf der ganzen welt exakt der selbe.
denn so ist er nun mal definiert.
date() liefert dann lediglich eine lokale (*) umformung dieser zahl in ein für den menschlichen benutzer besser interpretierbares format.
gruß,
wahsaga
(*) in abhängigkeit von den server-einstellungen.
hi wahsaga,
sind wir uns dann einig? ;)
Gruß aus Berlin!
eddi