在我的网页中,我使用PHPexcel 1.8
生成Excel文件。现在我面临的问题如下所述。
我有一些dd/mm/yyyy
格式的日期值。价值即将到来。但它在开头就显示single quote(')
。
我尝试了很多解决方案。但没有人帮助我。
我的示例代码部分在下面给出
$cnt = 1;
foreach($gluuidArr as $uuid){
$this -> excel_180->getActiveSheet() ->setCellValue('A'.$cnt,$aVal);
$this -> excel_180->getActiveSheet() ->setCellValue('B'.$cnt,$bVal);
$this -> excel_180 -> getActiveSheet() -> setCellValue('C'.$cnt, $cVal);
$this -> excel_180->getActiveSheet() ->setCellValueExplicit('D'.$cnt,$dVal, PHPExcel_Cell_DataType::TYPE_STRING);
$this -> excel_180 -> getActiveSheet() -> setCellValue('E'.$cnt, $eVal);
$cnt += 1;
}
$aVal, $bVal,..
在循环内声明,$eval
包含dd/mm/yyyy
格式的日期
假设日期为20/05/2016
,点击excel单元格时,它会显示为'20/05/2016
我试过了
$this -> excel_180->getActiveSheet()->getStyle('E'.$cnt)->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_DDMMYYYY);
但没有运气。
请帮我摆脱这个问题。任何帮助都可以得到赞赏。
答案 0 :(得分:2)
那是因为你没有存储日期,你正在存储恰好代表人类日期的字符串。 MS Excel不会将日期存储为字符串,而是作为浮点数,表示自1900年1月1日(或Mac版本的1904年1月1日)以来的天数
如果要在PHPExcel中存储日期/时间值,则需要将该日期/时间转换为MS Excel timestsamp值,然后为单元格设置格式掩码,指示您希望如何显示它。
PHPExcel Documentation中对此进行了解释,并在Examples
中进行了演示