|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
[2003-03-27 15:29 UTC] james_clent at splwg dot com
When doing this simple function date("H:i:s",1) php returns 16:00:01. Testing with other values still finds this issue.
Haven't seen this as reported out there so assume 4.3.1 has same bug still.
Thank you,
James
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Thu Dec 04 23:00:01 2025 UTC |
No that is not what I want. I do exactly what I want to do and expect to get back 0:00:01 as it should. When I give DATE("H:i:s", 3600) it returns 17:00:00. I'm trying to display the elapse time between to timestamps (standard UNIX MKTIME values). I just simplified your error for you, because the difference in MKTIME timestamps is in seconds.Well, your expectation is wrong. Unix timestamps, which is what you are using, are timezone neutral. That means that a timestamp of 3600 refers to the same moment in history, not the same time. Therefore date("H:i:s",3600) is going to give you a different answer depending on which timezone you are in.Your solution is right. However, one might consider to remove this piece of user contribution from the MKTIME function entry though, since it only works if you are on GMT. ------------------<direct copy from webpage>--------------- User Contributed Notes mktime chris at ixi dot net 22-Jul-1999 01:00 You have 74788 seconds and you want to convert to hh:mm:ss. You can just do date("H:i:s", mktime(0,0,74788)) which returns 20:46:28. ------------------<end of copy from webpage>---------------