Grazie ad entrambi per la risposta, ho dato uno sguardo al link di badaze, ed ho cercato di implementare la sua funzione:
Codice PHP:
function h100($var1) {
$var2 = str_replace(':','.',$var1);
return ((int) $var2) + ((($var2 - (int) $var2)) / 0.6);
}
function h60($var1) {
return str_replace('.',':',sprintf("%01.2f", ((int) $var1) + ((($var1 - (int) $var1)) * 0.6)));
}
print "Conversione in centesimi di ore :<br/>";
print h100('1:16');
print "<br/>";
print h100('1:35');
print "<hr/>";
print "Conversione da centesimi di ore in ore normali :<br/>";
print h60(h100('1:16')+h100('1:35'));
Funziona correttamente, adesso mi visualizza la somma delle ore maggiori di 60. L'unico problema riguarda i minuti. in pratica se io faccio questa somma:
34:00 + 8:00 + 30:30 + 5:30 = 77:60
Mentre dovrebbe restituire 78:00
posto parte del codice che utilizzo, magari sbaglio io qualcosa:
Codice PHP:
$time_array_ae = explode(":",$row[0]);
$ae = $time_array_ae[0].":".$time_array_ae[1];
$time_array_be = explode(":",$row[1]);
$be = $time_array_be[0].":".$time_array_be[1];
$time_array_ce = explode(":",$row[2]);
$ce = $time_array_ce[0].":".$time_array_ce[1];
$prova = h60(h100($ae) + h100($be) + h100($ce));
$time_array_ap = explode(":",$row_pr[0]);
$ap = $time_array_ap[0].":".$time_array_ap[1];
$time_array_bp = explode(":",$row_pr[1]);
$bp = $time_array_bp[0].":".$time_array_bp[1];
$time_array_cp = explode(":",$row_pr[2]);
$cp = $time_array_cp[0].":".$time_array_cp[1];
$prova1 = h60(h100($ap) + h100($bp) + h100($cp));
$totale_prova = h60(h100($prova)+h100($prova1));