Si, infatti non ho potuto rispondere prima.
ttcc date_diff l'ho provata e dà lo stesso risultato di ->diff.
Rispondo anche a dabula dicendo che a me serve 05 e non 5 perchè le ore ed i minuti li devo poi sommare, se sommo 5.5 con 5.45, il risultato è 5.95, se sommo 5.05 con 5.45, il risultato 5.50, spero di avervi fatto capire il motivo della mia richiesta, quindi non mi è utile farmi stampare Ore 5, Minuti 5.
Ho provato il tuo metodo darbula e sembra funzionare, spero che sia valido per ogni tipo di input. In alternativa avevo modificato anche quella che avevo postato all'inizio: differenzaore, in questo modo
in questo modo, per gli orari che si accavallano su due giorni, controllo se $ora2 è più piccola vuol dire che mi trovo al giorno successivo e quindi aggiungo 24 alle ore, non so quanto sia corretto, ma anche questo sembra funzionarecodice:function differenzaore($ora2, $ora1){ $sep=':'; $part = explode($sep, $ora1); $arr = explode($sep, $ora2); if($arr[0]<$part[0]){ $diff= mktime($arr[0]+24, $arr[1]) - mktime($part[0], $part[1]); }else{ $diff= mktime($arr[0], $arr[1]) - mktime($part[0], $part[1]); } $ore=floor($diff / (60*60)); $minuti=($diff / 60) % 60; $ore = str_pad($ore,2,0,STR_PAD_LEFT); $minuti = str_pad($minuti,2,0,STR_PAD_LEFT); $risultato = $ore.":".$minuti; return $risultato; }

 
			
			 
					
					
					
						 Rispondi quotando
  Rispondi quotando