Sería cuestión de que separes los elementos de la hora y los multipliques por el número en cuestión, luego, vas descontando minutos y segundos a los valores resultantes de las multiplicaciones hasta que coincidan con el formato
tradicional, es decir, los minutos y segundos no pueden ser mayores ni iguales a 60.
Código PHP:
Ver originalfunction multi($hora, $cantidad){
$segundos = $array[2] * $cantidad;
$minutos = $array[1] * $cantidad;
$horas = $array[0] * $cantidad;
while ($segundos >= 60){ //Si los segundos son mayores o iguales a 60
$segundos -= 60; //Les resto 60
$minutos++; //Y aumento un minuto
}
while ($minutos >= 60){ //Si los minutos son mayores o iguales a 60
$minutos -= 60; //Les resto 60
$horas++; //Y aumento una hora
}
return $horas . ':' . $minutos . ':' . $segundos;
}
echo multi('18:33:29', 4); //Imprime 74:13:56
echo multi('3:21:20', 2); //Imprime 6:42:40
Saludos