Я использую данные из Excel2007, проанализированные PHPExcel , а даты появляются как дни с 1900 года.
Excel2007
Как я могу преобразовать в строку YYYY-MM-DD (или что-нибудь подобное)?
YYYY-MM-DD
Что-то вроде этого, должно сработать:
PHPExcel_Style_NumberFormat::toFormattedString($cell->getCalculatedValue(), 'YYYY-MM-DD');
Или используйте
$phpDate = PHPExcel_Shared_Date::ExcelToPHP($cell->getCalculatedValue());
для преобразования даты Excel / PHPExcel в дату / время PHP, а затем использовать стандартную функцию PHP date () для форматирования
чисто php
$datetime1 = new DateTime('1900-01-01'); $datetime2 = new DateTime(); // today $interval = $datetime1->diff($datetime2); $days=$interval->format('%a'); $days+=2; // add boundary days echo $days; // this is the number excel will use