Marcus Bointon wrote:
sorry, wrong language, you need
On 18 Jan 2005, at 10:53, Tom wrote:
PST = UTC - 8, therefore if you ask for strtotime in PST it will give you now + 8. This is standard in most languages, you are just reading the functionality back to front.
ie when you say strtotome('now PST'), what you are asking for is the current local time (UTC in your instance) given an input date in PST
OK, I see some logic in that - now how to work around it?
try print date('Y-m-d H:i:s', strtotime('now') -0800)."\n";
echo "full date PST is ", date('Y-m-d H:i:s', strtotime('now -8 hours')), "<br>";
If you define the constants in another file, then you can use them wherever
eg $PST = -8;
...
$dateString = 'now '.$PST.' hours';
echo "full date PST is ", date('Y-m-d H:i:s', strtotime($dateString)), "<br>";
Tom
That definitely won't work; -0800 will be interpreted as an octal value, but it's not a legal value. If it was interpreted as a decimal value, it would subtract 800 minutes, which is no use to anyone. Numeric offsets are supposed to work inside the strtotime string param, according to the docs.
Much of the point of using zone names rather than fixed numeric offsets is that it allows for correct daylight savings calculations (assuming that locale data is correct on the server).
Let me rephrase the question - how can I get the current time in a named time zone using strtotime and without using a numeric offset?
Marcus
-- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php