Gå til innhold

Regne ut timer og min fra timestamp


Anbefalte innlegg

Holder på å lage en nedtelling med timer minutter til et gitt tidspunkt.

Har tidsdpunktet i unix-timestamp ($time_to_open) og lurer på hvordan jeg kan regne ut hvor mange timer og minutter det er til fra nå (time())?

 

Har prøvd dette:

$time_to_open = $next_open - time();
$time_to_open_mins = $time_to_open / 60;

$time_to_open_temp = explode(".", ($time_to_open_mins / 60));
$time_to_open_hours = $time_to_open_temp[0];
$time_to_open_mins = round("0." . $time_to_open_temp[1] * 60, 2);
$time_to_open_mins = explode(".", $time_to_open_mins);
$time_to_open_mins = $time_to_open_mins[1];

 

Men hvis det er 6,40 timer igjen blir det 6,4 som igjen blir tolket feil i utregningen...

 

Tips?

Lenke til kommentar
Videoannonse
Annonse

Regn ut antall sekunder først

 

Deretter kan du lage en funksjon ala denne. Denne tar millisekunder og konverterer til samme format som brukes i Trackmania Sunrise, så du må skrive litt om :!:

 

/*
Tiden skal vises som i TMS, 0:32.01, hvor 0 er min, 32 sec, 01 er hundredeler
*/
function get_time_from_ms($ms){
 #$now = floor($ms/1000);
 $now = $ms;
 $days = intval($now / (60*60*24*1000));
 $rest = $now % (60*60*24*1000);
 $hours = intval($rest / (60*60*1000));
 $rest = $rest % (60*60*1000);
 $minutes = intval($rest / (60*1000));
 $sec = floor($ms/1000)%60;
 $hundredeler = (($ms/1000)-floor($ms/1000))*100;
 	
 $return="";
 if($days >0){
   $return .=$days.":";
 }
 if($hours>0){ $return .=$hours.":";	}
 $return .=$minutes.":";
 $return .= add_lz($sec,2).".";
 $return .= add_lz($hundredeler,2);
 return ($return);
}
function add_lz($tall,$len){
 return sprintf("%0".$len."d", $tall);
}

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...