Convertendo minutos em horas
Prefácio
Bom, não tem muito o que falar. Em minhas andanças pela internet, encontrei neste site uma rotina bem legal para converter minutos em horas.Sem mais delongas, vamos pro que interessa.
Mão nas massa
Eu peguei o código e fiz alguns alterações para ficar mais didático. Também inseri alguns comentários para tornar mais simples o entendimento.Código: Alternar entre o modo de cópia/destaque
<?php function m2h($mins) { // Se os minutos estiverem negativos if ($mins < 0) else $min = $mins; // Arredonda a hora $m = ($min - ($h * 60)) / 100; $horas = $h + $m; // Matemática da quinta série // Detalhe: Aqui também pode se usar o abs() if ($mins < 0) $horas *= -1; // Separa a hora dos minutos $h = $sep[0]; $sep[1] = 00; $m = $sep[1]; // Aqui um pequeno artifício pra colocar um zero no final $m = $m . 0; } ?>
<?php
function m2h($mins) {
// Se os minutos estiverem negativos
if ($mins < 0)
$min = abs($mins);
else
$min = $mins;
// Arredonda a hora
$h = floor($min / 60);
$m = ($min - ($h * 60)) / 100;
$horas = $h + $m;
// Matemática da quinta série
// Detalhe: Aqui também pode se usar o abs()
if ($mins < 0)
$horas *= -1;
// Separa a hora dos minutos
$sep = explode('.', $horas);
$h = $sep[0];
if (empty($sep[1]))
$sep[1] = 00;
$m = $sep[1];
// Aqui um pequeno artifício pra colocar um zero no final
if (strlen($m) < 2)
$m = $m . 0;
return sprintf('%02d:%02d', $h, $m);
}
print m2h(135);
?>
Conclusão
Realmente não tem muito o que se falar desta rotina, mas se você quiser ter mais informações sobre a função abs(), você pode dar uma olhada no artigo Obtendo números positivos sem gambiarra.Apenas espero que vocês enviem dúvidas e sugestões pro PHPit melhorar!
Ah... E em breve termos novidades! :)
Um grande abraço e fiquem com Deus!
PHP levado a sério