![]() |
PHP kod (tid)
Hej
Har denna koden här som jag tror ställer till lite. Det är en kod från joomla plugin. Servern är på svensk tid men ändå så visar den fel. Allt är rätt inställt i joomla m.m. function time_diff( $timestamp ) { $start = strtotime( $timestamp ); $end = time(); if($start <= $end) { $d = $end - $start; if( $days = intval((floor($d/86400))) ) $d = $d % 86400; if( $hours = intval((floor($d/3600))) ) $d = $d % 3600; if( $minutes = intval((floor($d/60))) ) $d = $d % 60; //$d = intval( $d ); if($days == 0 && $hours == 0 && $minutes == 0) { return JText::_('MOD_GK_JS_STATS_MOMENT_AGO'); } else { $str = ''; $str .= ($days > 0) ? (($days == 1) ? $days.' '.JText::_('MOD_GK_JS_STATS_DAY').' ' : $days.' '.JText::_('MOD_GK_JS_STATS_DAYS').' ') : ''; $str .= ($hours > 0) ? (($hours == 1) ? $hours.' '.JText::_('MOD_GK_JS_STATS_HOUR').' ' : $hours.' '.JText::_('MOD_GK_JS_STATS_HOURS')).' ' : ''; $str .= ($minutes > 0) ? (($minutes == 1) ? $minutes.' '.JText::_('MOD_GK_JS_STATS_MINUTE').' ' : $minutes.' '.JText::_('MOD_GK_JS_STATS_MINUTES')).' ' : ''; $str .= JText::_('MOD_GK_JS_STATS_AGO'); } return $str; } else |
Vad har du för värde in på $timestamp, vad får du ut och vad förväntar du dig att få ut? :-)
|
Citat:
Så här står det: Senaste aktivitet en stund sedan ... Tittar man då på flödet så är senaste för över en timme sedan.. Kör jag "date" på linux burken så får jag ut svensk tid... Så tiden borde vara rätt.. |
PHP-kod:
|
Citat:
Edit: Ser nu att den står på Europe/Berlin.. Men enligt servern och Joomla så är det Europe/Stockholm. |
Har bytt i php.ini till Europa/Stockholm.. Men det står fortfarande "Senaste inlägg gjordes för 1 timme sedan" när jag precis postat ett inlägg.
|
Läs lite här: http://www.php.net/manual/en/timezones.europe.php
Tror det ska stå "Europe/Stockholm" siället för "Europa/Stockholm" |
Citat:
|
Alla tider är GMT +2. Klockan är nu 07:52. |
Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson