I have an apache2/php server running that decided DST was last week
(must not have been patched last year).  I patched everything I could
and my PHP apps are still showing an hour behind, only from the web.

If I run the following code from bash:

# date
Wed Oct 31 06:32:47 CDT 2007
# echo '<?=date("h:i:s")?>' | php
06:32:47

...I get the correct time.  Thinking that maybe somehow PHP is
misreading the timezone I tried this:

# echo '<?
echo "Original Time: ". date("h:i:s")."\n";
putenv("TZ=US/Central");
mktime(0,0,0,1,1,1970);
echo "New Time: ". date("h:i:s")."\n";
?> ' | php

...and strangely receive this:

Original Time: 06:33:26
New Time: 11:33:26

There is no timezone set in my php.ini and nothing hard set in any of
my PHP scripts.  I seem to be missing something major.  I'm tempted to
move the few sites I have on this box to a fresh and DST patched
system but it'd be nice to see if somebody has racked their brain with
this one before.


-- 
Donovan Niesen