2011-12-08 15 views
8

Sto caricando un file Excel contenente celle con dati temporali, ad es. 08:00:00. Ma quando provo a leggere quelle celle con getValue(), restituisce alcuni numeri in virgola mobile invece del tempo effettivo (nel caso di 08:00:00, restituisce 0,3333333). Ecco il mio codice:PHPExcel - lettura del valore temporale da una cella

$objPHPExcel = PHPExcel_IOFactory::load($filename); 
$objWorksheet = $objPHPExcel->getActiveSheet(); 
echo $objWorksheet->getCellByColumnAndRow(3, 5)->getValue(); 

Come si ignora questa conversione strana?

PHPExcel 1.7.6 e foglio di lavoro Excel 2003 (.xls)

risposta

14

È necessario applicare formato di cella per questo:

$cell = $objWorksheet->getCellByColumnAndRow(3, 5); 
$cell_value = PHPExcel_Style_NumberFormat::toFormattedString($cell->getCalculatedValue(), 'hh:mm:ss'); 
echo $cell_value; 
Problemi correlati