Buenas tardes,
tal vez podrias probar de la siguiente forma:
Código PHP:
if(isset($_POST['total'])){
$array_horas = array(); //declaro array vacio que tendra todas las horas sin repetir
for($i=0;$i<$_POST['total'];$i++){
if (in_array($_POST['hora'][$i], $array_horas)) {//si la hora ya esta en el array, salgo
exit ("ERROR... EXISTEN HORARIOS DUPLICADOS");
}
else{$array_horas[]=$_POST['hora'][$i];} // si la hora no esta en el array, la ingreso
}
}
De todas maneras, no creo que funcione la forma $_POST['hora'][$i]. Creo que se queda con un dato solo, que es el ultimo de los campos llamados "hora".
Saludos