PHPExcel问题,用于从excel文件中读取日期字段

当我使用该类在我的 PHP代码中读取excel文件时,我遇到了PHPExcel类的问题.
// Reading the excel data
$objReader = new PHPExcel_Reader_Excel2007();
$objReader->setReadDataOnly(true);
$objPHPExcel = $objReader->load('test.xlsx');
$objPHPExcel->setActiveSheetIndex(0);
$dataArray = $objPHPExcel->getActiveSheet()->toArray();

我正在使用此代码,现在的问题是,当我创建一个excel文件并插入像日期这样的单元格值时说01/09/2012

并使用PHPExcel类的toarray()函数读取完整的excelsheet,然后它不返回日期值.它返回一个数值.

我发现当我们使用MS OFfice应用程序创建Excel文件并在任何单元格中插入日期时,excel会将单元格转换为日期格式.所以现在我想使用PHPExcel类读取日期格式单元格.

规则一:

设置$objReader-> setReadDataOnly(true)不是一个好主意;什么时候你会用日期.如果这样做,那么PHPExcel无法告诉您单元格是否包含日期或数字.

规则二:

该数字是Excel存储的Excel日期值.然后,Excel数字格式掩码用于在显示时将该数字转换为格式化的“人类可读”日期. (如果您使用了$objReader-> setReadDataOnly(true);那么您还没有加载单元格的numberFormat掩码.
如果已加载numberFormat掩码,则可以使用getFormattedValue()方法将格式化的“人类可读”日期作为字符串返回.

规则三:

要将Excel数字日期值转换为unix日期/时间戳或PHP DateTime对象,可以使用内置的PHPExcel_Shared_Date :: ExcelToPHP()或PHPExcel_Shared_Date :: ExcelToPHPObject()方法.

规则四:

所有这些都有完整的记录.但我想我将不得不写一个专门用于日期的特殊手册,文字名称中包含大红色字母的DATES字样.

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...