xlsx tables and I use PhpSpreadsheet to parse them. Some cells are formatted as date. The problem is that PhpSpreadsheet returns the values from date-formatted cells in an unspecified format:
How to get the date from a cell in form of a UNIX time or a DateTimeInterface instance?
The value is amount of days passed since 1900. You can use the PhpSpreadsheet built-in functions to convert it to a unix timestamp:
$value = $worksheet->getCell('A1')->getValue(); $date = \PhpOffice\PhpSpreadsheet\Shared\Date::excelToTimestamp($value);
Or to a PHP
$value = $worksheet->getCell('A1')->getValue(); $date = \PhpOffice\PhpSpreadsheet\Shared\Date::excelToDateTimeObject($value);