Reputation: 2569
Take a look on the code below:
$t=77;
date("H:i:s", $t);
It returns
21:01:17
The correct result, of course, should be something like 00:01:17.
The $t value indeed is a value in seconds returned by the YouTube GData API, trought($videoEntry->getVideoDuration())
.
How can this problem be fixed?
Upvotes: 4
Views: 2541
Reputation: 34
I think if you getting values in second, then you should use mktime function then it will give correct result. For eg.:
$t=77;
echo date("H:i:s", mktime(0,0,$t));
Upvotes: -1
Reputation: 7930
date is timezone specific. You need to set it to GMT to get the results you want.
date_default_timezone_set('GMT');
$t=77;
echo date("H:i:s", $t);
Upvotes: 8
Reputation: 8040
The second argument to date() is a unix timestamp - in other words it is a number of seconds since Jan 1, 1970, adjusted to what PHP is set to for a timezone (can be set with date_default_timezone_set).
Upvotes: 2
Reputation: 8721
Try to set GMT timezone.
date_default_timezone_set('Europe/London');
Upvotes: -1