non ho capito la tua ultima frase... io non volgio che al 00 venga sostituito 24, solo che controlli se l'ora ricevuta : una normalissima stringa '15:25' sia fomrata da:
2 sottostringhe divise da ":" dove la prima stringa può avere 23 soluzioni ovvero: (01,02,03..24) e la seconda (00,01,02,..29) quello che ti sto dicendo è che il controllo per i minuti funziona ma per le ore no perchp se scrivo 00:12 me lo accetta, se scrivo 23:12 mi da l'errore... la mia funzione è questa:


function c_time ($time) {

$r=eregi("([01,24])+: ([0-59]{2})",$time);

return $r;

}

$time="23:15";
if (c_time($time)==false) $msg="Error";
else $msg="";