I am trying to compare a given date string (i.e. June 30, 2002 is 20020630). I want to make sure that the input string that is given is not greater than today (i.e. if today is June 30, and you ask for 20020701, I want to be able to throw an error).
I'm a newbie, so I'm not sure the best way to do this. My thought was that if I take the year (YYYY) and add on the day-of-year (i.e. Feb 10 = 041) then I would be able to compare them as you would any other numbers. The problem I have then run into is that strftime and date seem to have different opinions as to what day of the year it is. date z - day of the year; i.e. "0" to "365" strftime %j - day of the year as a decimal number (range 001 to 366) I have these variables defined $SEARCHYEAR = YYYY i.e 2002 $SEARCHMONTH = MM i.e. 06 $SEARCHDAY = DD i.e. 30 $TODAYCMP=date ("Yz"); $SEARCHCMP=strftime("%Y%j",mktime(0,0,0,$SEARCHMONTH,$SEARCHDAY,$SEARCHYEAR)); and then I tried it for today and got echo "<!-- TODAY is $TODAYCMP SEARCHCMP is $SEARCHCMP --> "; as a result I get <!-- TODAY is 2002180 SEARCHCMP is 2002181 --> So I'm trying to figure out: A) Why strftime and date don't handle leap years the same way and (more importantly) B) The best way to make sure a given date YYYYMMDD is not greater than "today" I did some googling & php.net searching without luck. Thanks TjL -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php