L'utilissima classe PHP-ExcelReader vi viene in aiuto quando dovete estrapolare dei dati da un file excel, e darli in pasto alla vostra paginetta scritta in php. Molto veloce e pratica, purtroppo, andando a leggere una cella del documento di tipo "data", viene restituita con un giorno sommato, senza alcun visibile motivo. Inizialmente avevo risolto il problema, impostando tutte le celle nel tipo "testo", ma non mi sembrava pratico per i miei clienti meno pratici che devono utilizzare i miei prodotti.
Quindi ho messo mano alla pagina "reader.php" e fra le 1086 righe di codice ho trovato la funzione "createDate" al cui interno viene elaborata la seguente istruzione alla riga 971:
$utcValue = round(($utcDays+1) * SPREADSHEET_EXCEL_READER_MSINADAY);
Quel "+1" è il problema. onestamente non capisco che cosa ci faccia li, ma cè e crea problemi.
Levate il "+1" e pubblicate la pagina: il problema sparirà.