PX : code

Daylight Savings Tim by Steve Edberg
Download this code


<?php

#------------------------------------------------------------------------------
# IS_DAYLIGHT_TIME: Returns 1 (true) if given $time is in daylight savings
# time; 0 (false) otherwise.
#
# Parameters:
#  (int)$time This is the desired time, in Unix seconds-since-the-epoch
#       format.
#
# Notes:
# Daylight time is defined as starting at 2am on the first Sunday in April
# (2am becomes 3am), and ending at 2am on the last Sunday in October (2am
# becomes 1am).
#
# Written 18 March 1998 by S. Edberg, UC Davis.
#------------------------------------------------------------------------------

function is_daylight_time($time) {

 list(
$dom$dow$month$hour$min) = explode(":"date("d:w:m:H:i"$time));

 if   (
$month && $month 10) {
  
$retval 1;        # May thru September
 
} elseif ($month == && $dom 7) {
  
$retval 1;        # After first week in April
 
} elseif ($month == && $dom <= && $dow == && $hour >= 2) {
  
$retval 1;        # After 2am on first Sunday ($dow=0) in April
 
} elseif ($month == && $dom <= && $dow != && ($dom-$dow 0)) {
  
$retval 1;        # After Sunday of first week in April
 
} elseif ($month == 10 && $dom 25) {
  
$retval 1;        # Before last week of October
 
} elseif ($month == 10 && $dom >= 25 && $dow == && $hour 2) {
  
$retval 1;        # Before 2am on last Sunday in October
 
} elseif ($month == 10 && $dom >= 25 && $dow != && ($dom-24-$dow 1) ) {
  
$retval 1;        # Before Sunday of last week in October
 
} else {
  
$retval 0;
 }

 return(
$retval);

?>

Comments or questions?
PX is running PHP 5.2.17
Thanks to Miranda Productions for hosting and bandwidth.
Use of any code from PX is at your own risk.