2017-09-22 1 views
-2

J'utilise l'API Google Maps pour obtenir la durée entre deux points. Cette API donne la durée en heures et minutes. Donc, je veux convertir seulement en minutes en utilisant le code PHP. Y a-t-il des solutions?Convertir des heures et des minutes en minutes en utilisant PHP

Ex: 2 heures 10 minutes (devrait donner 130 minutes que la sortie)

+0

Possible duplicate de [Comment pour convertir hh: mm: ss en minutes] (https://stackoverflow.com/questions/24975664/how-to-convert-hhmmss-to-minutes) – Tirolel

+1

Prendre les heures, multiplier par 60, puis l'ajouter aux minutes . –

Répondre

1

Essayez quelque chose comme ça

// Transform hours like "1:45" into the total number of minutes, "105". 
function hoursToMinutes($hours) 
{ 
    $minutes = 0; 
    if (strpos($hours, ':') !== false) 
    { 
     // Split hours and minutes. 
     list($hours, $minutes) = explode(':', $hours); 
    } 
    return $hours * 60 + $minutes; 
} 

// Transform minutes like "105" into hours like "1:45". 
function minutesToHours($minutes) 
{ 
    $hours = (int)($minutes/60); 
    $minutes -= $hours * 60; 
    return sprintf("%d:%02.0f", $hours, $minutes); 
} 

Src: Laserlight ->http://board.phpbuilder.com/showthread.php?10342598-quot-Convert-quot-hours-minutes-quot-to-quot-total_minutes-quot-and-back-quot

+2

veuillez créditer l'auteur, http://board.phpbuilder.com/showthread.php?10342598-quot-Convert-quot-hours-minutes-quot-to-quot-total_minutes-quot-and-back-quot – Tirolel

0

Merci pour l'aide les gars, J'ai trouvé une autre solution ... Cela fonctionne pour moi

$duration = "What Ever the time (2 hours 10 mins)" 

$split = preg_split("/[^\w]*([\s]+[^\w]*|$)/", $duration, -1, PREG_SPLIT_NO_EMPTY); 

    if ($split[0] >= 1 && $split[0] < 60 && $split[1] == 'min'){ 
     $duration = $split[0]; 
    } 
    elseif ($split[0] >= 1 && $split[0] < 60 && $split[1] == 'mins'){ 
     $duration = $split[0]; 
    } 
    else{ 
     $durationHours = $split[0]*60; 
     $durationMin = $split[2]; 

     $duration = $durationHours + $durationMin; 
     echo $duration; 
    }