Thanks for the code snippet. I see that everybody defaults to a season. I was doing a && comparison between two seasons, so that's why it messed up when it into the new year.
Thanks to Bogdan and Tom for the helpers. I can go debug my code. And make it less complicated. ^_^;;; (It's was a lot longer than what is here.) ----- Original Message ----- From: "Tom Rogers" <[EMAIL PROTECTED]> To: "webapprentice" <[EMAIL PROTECTED]>; "Bogdan Stancescu" <[EMAIL PROTECTED]> Cc: <[EMAIL PROTECTED]> Sent: Saturday, January 05, 2002 11:17 PM Subject: Re: [PHP] Checking the season > Hi > This should work: > <? > $year = date("Y"); > $spring = mktime (0,0,0,3,21,$year); > $summer = mktime (0,0,0,6,21,$year); > $autumn = mktime (0,0,0,9,21,$year); > $winter = mktime (0,0,0,12,21,$year); > $now = mktime(); > if($now < $spring || $now >= $winter): > echo "Winter"; > elseif($now >= $autumn): > echo "Autumn"; > elseif($now >= $summer): > echo "Summer"; > else: > echo "Spring"; > endif; > ?> > BTW There may be a bug in mktime() (php4) if you use 08 or 09 in the > month part...on my system this happens > (linux/apache/php4.1) > > <? > $autumn = mktime (0,0,0,09,21,2002); > echo "date = ".date("d/m/Y",$autumn)."<br>"; > ?> > > This prints: date = 21/12/2001 > > Also prints the same date for a month of 08 > > Tom > > > > At 11:34 AM 6/01/02, webapprentice wrote: > >I'll have to use and if/elseif construct, because I don't believe a switch() > >constructs cases can take expressions, can it? > > > > > >----- Original Message ----- > >From: "Bogdan Stancescu" <[EMAIL PROTECTED]> > >To: "webapprentice" <[EMAIL PROTECTED]> > >Cc: <[EMAIL PROTECTED]> > >Sent: Saturday, January 05, 2002 11:38 AM > >Subject: Re: [PHP] Checking the season > > > > > > > You could do a case() or if/elseif, check if it's spring, summer or autumn > >and leave the code for winter as default/else. > > > > > > Bogdan > > > > > > webapprentice wrote: > > > > > > > Hi, > > > > Just need a sounding board to help me think this through. > > > > > > > > I want to check the current date to determine what "season" it is and > >display the appropriate picture. > > > > > > > > I define spring as 03/21/YYYY, summer as 06/21/YYYY, autumn as > >09/21/YYYY, and winter as 12/21/YYYY. > > > > > > > > I form a string for the current date and get a timestamp via mktime(). > > > > I also get the equivalent timestamps for the dates above for the > >seasonal changes. > > > > > > > > Then, I compare the current date to see if it's between the seasonal > >dates. > > > > The problem is when I go from 12/31/YYYY to 01/01/(YYYY+1). > > > > Since winter and spring dates are one year apart, the current date > >timestamp comparison gets messed up and nothing displays. > > > > > > > > How do I do a proper comparison? I was thinking of just seeing if the > >current date timestamp is greater than each of the seasonal date timestamp, > >but it feels like I would miss something. Would I? Or is there another > >solution? > > > > > > > > Thank you for your time. > > > > > > > > --Stephen > > > > > > > > > > > >-- > >PHP General Mailing List (http://www.php.net/) > >To unsubscribe, e-mail: [EMAIL PROTECTED] > >For additional commands, e-mail: [EMAIL PROTECTED] > >To contact the list administrators, e-mail: [EMAIL PROTECTED] > -- PHP General Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]