tags:

views:

26

answers:

3

This PHP statement date('Y-m-d',1281394800) returns different values in different servers. One gives me 2010-08-09 and the other 2010-08-10. Could someone please help explain?

+1  A: 

Are the servers in (or configured with) different timezones?

date()'s output is timezone-dependent.

zerocrates
+2  A: 

Try this and see if you still get different results:

date_default_timezone_set('UTC');
echo date('Y-m-d',1281394800);

If you get exactly the same results across servers, you can set the timezone to the one you want. For more information:

date_default_timezone_set

List of Supported Timezones

Brendan Bullen
Thanks, this was the problem. I havent been keen on the time zone until it bit me here! Thanks for all who responded about the timezone.
jgnasser
+1  A: 

Set the time zone:

date_default_timezone_set('UTC');
echo date('Y-m-d',1281394800);

date_default_timezone_set — Sets the default timezone used by all date/time functions in a script

Sarfraz