metti tutto in un array di tipo codice_fiscale => array('data_in','data_out') poi iteri l'array ottenuto dalla lettura del file e controlli che tutte le chiave abbiano data_in/out compilata. Se lo stesso codice fiscale può fare in/out più volte al mese, sarà una struttura tipo

codice:
array(
 'codice_fiscale_x' => array(

       array('data_in' => '....','data_out'=>'.....'),
       array('data_in'=>'....','data_out'=>'.....')
    )
....
);
poi tendenzialmente data_in e data_out dovrebbero essere all'interno delle 24 ore a partire da data_in, a meno che i vostri dipendenti non restino anche giorni interi in ufficio senza mai uscire. Ovviamente mentre riempi l'array puoi notare delle discrepanze, tipo "ho data_out ma non ho una data_in" oppure "data_out è due giorni data_in" o cose simili