为什么PHPexcel在日期字段中插入单引号?

DaH*_*Ika 5 php phpexcel

我正在尝试使用PHPExcel将日期插入单元格.这是我的代码:

    include('xlsx/Classes/PHPExcel.php');
    include('xlsx/Classes/PHPExcel/Calculation.php');
    include('xlsx/Classes/PHPExcel/Cell.php');
    $objPHPExcel = new PHPExcel();
    $start = 3;
    $objPHPExcel->getActiveSheet()->getStyle('A1')->getNumberFormat()->setFormatCode('DD.MM.YYYY');
    $objPHPExcel->getActiveSheet()->SetCellValue('A1', date('d.m.Y', time()+60*($start + 3)));
    $objPHPExcel->getActiveSheet()->getStyle('A1')->getNumberFormat()->setFormatCode('DD.MM.YYYY');
    $objWriter = new PHPExcel_Writer_Excel5($objPHPExcel);
    $objWriter->save('text.xls');
Run Code Online (Sandbox Code Playgroud)

但是,PHPexcel选择正确的格式,但它会使用单引号插入日期

'27.02.2016
Run Code Online (Sandbox Code Playgroud)

代替

27.02.2016
Run Code Online (Sandbox Code Playgroud)

我不知道如何在没有这个引用的情况下插入日期,希望你帮助我.

Mat*_*nes 5

setFormatCode方法设置 Excel 将用于输出日期的格式,而不是设置 PHPExcel 解释日期的格式。Excel 电子表格以特定的时间戳格式存储日期,可以使用该类生成该PHPExcel_Shared_Date格式。它具有在各种日期格式和 Excel 的预期格式之间进行转换的方法。

$objPHPExcel->getActiveSheet()->SetCellValue('A1',
    PHPExcel_Shared_Date::PHPToExcel(time()+60*($start + 3)));
Run Code Online (Sandbox Code Playgroud)

...应该可以解决问题。