Zeitproblem

Scotty86

Mitglied
Hallo,
also irgendwie verzweifel ich grad mit der Zeitrechnung in PHP :confused:

Wenn man folgendes macht:
PHP:
echo (mktime(0,0,0,date("m"),date("d"),date("Y"))/24/60/60);
Sollten doch eigentlich die Tage vom 01.01.1970 ausgegeben werden.
Nun kommt da aber was krummes raus, also keine gerade Zahl, warum?
Bzw was kann man dagegen machen (ohne blindes rumrunden ;))

Gruesse
Scotty86
 
Hi,



anscheinden ist mktime() vergesslich es vergisst eine Stunde am 1.1.70 folgender Code rechnet richtig:

PHP:
echo (mktime(1,0,0,date("m"),date("d"),date("Y"))/24/60/60);

gruß

katosan

#edit

scheinbar hat er ein broblem mit dem Monat / Tagen bis zum 1.1.2008 gibt es ganze tage
 
Zuletzt bearbeitet:
Naja, seit diesem Zeitpunkt ist ja auch keine gerade Anzahl an Tagen vergangen (außer Du führst das Skript genau um Mitternacht durch ;-)). Und was meinst Du mit "blindes rumrunden". Wie wär's mit floor()?
 
@loomes naja aber da müsste die 1 bei der Stunde das Problem beheben.

Ok ich habe jetzt ganze Tage offensichtlich ist mein Recher auf Sommerzeit, wenn ich die abschalte dann sind die Tage ganz.

PHP:
 echo (mktime(1,0,0,date("m"),date("d"),date("Y"),0)/60/60/24);
 
Schon, du bekommst das trotzdem nicht gerade, wie matdacat in Post #3 schon sagte.
Um ein floor() kommt man da nicht herum.
 
Hmm die doku sagt mir :

Returns the Unix timestamp corresponding to the arguments given. This timestamp is a long integer containing the number of seconds between the Unix Epoch (January 1 1970 00:00:00 GMT) and the time specified.

also wen ich die GMT Stunde + 1 bereinige und auf Winterzeit stelle ist das erzeugte Datum Mitternacht GMT in relation zum 1.1.70 dann sollte er mir nach /60/50/24 ganze Tage vom 1.1.70 bis zum erzeugten Datum (1.7.08 00:00) liefern
 
Oh, pardon, bin ordentlich auf der Leitung gestanden: Ihr setzt ja die Uhrzeit auf Mitternacht. Mein Fehler, sorry.
 
Zurück