简单的问题在这里,我使用PHPExcel将数据网格导出到Excel文件。在我的数据网格中,我有几列包含日期,格式为'Y-m-d'。当我提取网格数据时,Excel不会将数据识别为日期(Excel表示它们具有常规格式,并且它们没有特定的数字格式)。使Excel识别从PHP发送的日期格式
无论如何,我可以格式化日期以便Excel可以将它们识别为数据发送到Excel之前的日期?
在此先感谢
简单的问题在这里,我使用PHPExcel将数据网格导出到Excel文件。在我的数据网格中,我有几列包含日期,格式为'Y-m-d'。当我提取网格数据时,Excel不会将数据识别为日期(Excel表示它们具有常规格式,并且它们没有特定的数字格式)。使Excel识别从PHP发送的日期格式
无论如何,我可以格式化日期以便Excel可以将它们识别为数据发送到Excel之前的日期?
在此先感谢
PHPExcel具有内置包组号的数据为Excel日期。 如果你我对你有好处,那么你只是将数字值作为日期并获取类型错误。
尝试像:$date = PHPExcel_Style_NumberFormat::toFormattedString($data, "d-M-Y");
正如PHPExcel documentation和描述的Examples如02types.php
你需要转换那些“格式化”日期到MS Excel序列化日期/时间戳
$dateString = '2015-12-21';
$excelTimestamp = PHPExcel_Shared_Date::PHPToExcel($dateString);
然后设置$ excelTimestamp作为单元格的值
$objPHPExcel->getActiveSheet()->setCellValue('C9', $excelTimestamp);
您应该然后设置电池
$objPHPExcel->getActiveSheet()
->getStyle('C9')
->getNumberFormat()
->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDD2);
的格式掩码