2016-05-06 219 views
1

定格的日期時間與PHP 和輸出Excel中如何設置格式的日期時間[PHPExcel]

date_default_timezone_set('Asia/Bangkok'); 
$objPHPExcel->getActiveSheet()->SetCellValue('S1', 'Show DateTime'); 
$dateValue = PHPExcel_Shared_Date::PHPToExcel(strtotime('23-Apr-1989 17:05:50')); 
$objPHPExcel->getActiveSheet() 
    ->setCellValue('S2', $dateValue); 
$objPHPExcel->getActiveSheet() 
    ->getStyle('S2') 
    ->getNumberFormat() 
    ->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDDSLASH); 


但輸出

enter image description here



如何顯示在Excel中23/04數據/ 1989 17:05:50 and excel type Date

+1

但1989 *是*> 1900和1904 ... – Leviathan

+0

啊,道歉,我誤讀日期 –

回答

2

您目前使用數字格式的預定義常數PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDDSLASH

如果更換,到你想要的格式,一切都應該是OK:'dd/mm/yyyy hh:mm:ss'

另請參見setFormatCode()的文檔:http://apigen.juzna.cz/doc/ouardisoft/PHPExcel/class-PHPExcel_Style_NumberFormat.html#_setFormatCode

+0

數據是正確的,但excel類型是自定義 如果可能,我想在Excel中格式化日期 – KwangKung

+1

除非您使用MS Excel的預定義日期格式之一,那麼它將是一種自定義格式.... this不應該對任何電子表格至關重要 –

+0

@KwangKung:答案是abou不改變單元格的*格式*,而不是*數據*。你試過了嗎?難道它不正是你想要的嗎? – Leviathan