Cita:
Iniciado por dante14 como puedo redondear una hora a la unidad
por ejemplo si es 8:45 que redondee a 9:00
tengo esta funcion
Código PHP:
function restaHoras($horaIni, $horaFin){
return (date("H:i:s", strtotime("00:00:00") + strtotime($horaFin) - strtotime($horaIni) ));
}
No se si quieres redondear la salida o la entrada...
Este ejemplo es para redondear la entrada de $horaIni, si los minutos son superiores a 30, añade +1 hora y los minutos a 0 (habría que tratar también los segundos).
Código PHP:
function restaHoras($horaIni, $horaFin){
list($h,$m,$s) = explode(":",$horaIni);
if($m > 30) {
$m = 0;
$h += 1;
} else {
$m = 0;
}
$horaIni = "$h:$m:$s";
return (date("H:i:s", strtotime("00:00:00") + strtotime($horaFin) - strtotime($horaIni) ));
}
Si lo que quieres redondear es la salida, seria lo mismo, simplemente guardas en una variable el return y haces explode ;)
Espero que te sirva, saludos