|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2003-01-29 13:01 UTC] michael dot mauch at gmx dot de
[2003-01-29 13:06 UTC] derick@php.net
|
|||||||||||||||||||||||||||
Copyright © 2001-2026 The PHP GroupAll rights reserved. |
Last updated: Sun Feb 01 22:00:01 2026 UTC |
When I run this script, it has make an error. While I increment the an date with secsperday, it is make an wrong result ! The example: <?php define("SECSPERMIN",60); define("MINSPERHOUR",60); define("HOURSPERDAY",24); define("SECSPERHOUR",SECSPERMIN*MINSPERHOUR); define("SECSPERDAY",SECSPERHOUR*HOURSPERDAY); function TimeToStr($time){ $str=""; $dt=GetDate($time); $str= sprintf("%02d",$dt['hours']).":".sprintf("%02d",$dt['minutes']).":".sprintf("%02d",$dt['seconds']); return($str); } function DateToStr($date) { $str=""; $dt=GetDate($date); $str=$dt['year'].'.'.sprintf("%02d",$dt['mon']).'.'.sprintf("%02d",$dt['mday']); return($str); }; function DateTimeToStr($datetime) { $r=DateToStr($datetime).' '.TimeToStr($datetime); return($r); } function EncodeDate($y,$m,$d){ #printbr("$y $m $d"); if (!checkdate($m,$d,$y)) return(-1); $res=mktime(0,0,0, $m, $d, $y); return($res) ; } function DecodeDate($date,&$y,&$m,&$d){ $y=-1;$m=-1;$d=-1; $dt=GetDate($date);if($dt===False) return(False); $y=$dt['year']; $m=$dt['mon']; $d=$dt['mday']; } print "<html>\n"; $date=EncodeDate(2003,01,01); for ($i=0;$i<1000;$i++) { DecodeDate($date,$y,$m,$d); $a1=DateTimeToStr($date); $date2=EncodeDate($y,$m,$d); $a2=DateTimeToStr($date); print "$date $a1 <-> $date2 $a2<br>\n"; if (($a1<>$a2) or ($date<>$date2)) {print "!!!! ERROR !!!!<br>\n"; exit;} $date=$date+SECSPERDAY; } print "DONE WITHOUT ERRORS !<br>\n"; print '</html>'; ?>