【问题标题】:How can set format datetime [PHPExcel]如何设置格式日期时间 [PHPExcel]
【发布时间】:2016-05-06 08:53:49
【问题描述】:

用 php 设置日期时间格式 并输出excel

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);


但输出



如何在 Excel 23/04/1989 17:05:50 和 excel 类型 Date

上显示数据

【问题讨论】:

  • 但是 1989 >1900 和 1904 ...
  • 啊,抱歉,我看错了日期

标签: php excel datetime phpexcel


【解决方案1】:

您目前使用预定义的常量PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDDSLASH 作为您的数字格式。

如果你用你想要的格式替换它,一切都应该没问题:'dd/mm/yyyy hh:mm:ss'

另请参阅setFormatCode() 的文档:http://apigen.juzna.cz/doc/ouardisoft/PHPExcel/class-PHPExcel_Style_NumberFormat.html#_setFormatCode

【讨论】:

  • 数据是正确的,但是excel类型是自定义如果可能的话,我想在Excel中格式化日期
  • 除非您使用 MS Excel 的预定义日期格式之一,否则它将是自定义格式....这对任何电子表格都不是关键
  • @KwangKung:答案是关于改变一个单元格的format,而不是它的data。你试过了吗?它不正是你想要的吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-04-29
  • 1970-01-01
  • 2015-01-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多