Добрый день ребята
У меня проблема с тем, как определить, было ли отформатировано значение ячейки на сегодняшний день или нет
когда я загружаю значение даты, я использую этот код
$data = $objWorksheet->getCellByColumnAndRow($col, $row);
когда значение ячейки форматируется в дату, значение $data = 27474
когда нет $data = 12/2/1983
Затем я использую этот код для форматирования их даты
if(PHPExcel_Shared_Date::isDateTime($data)){
$cellValue = $objWorksheet->getCellByColumnAndRow($col, $row)->getValue();
$dateValue = PHPExcel_Shared_Date::ExcelToPHP($cellValue);
$dob = date('Y-m-d',$dateValue);
}
Теперь проблема в том, когда $data
находится в форме на дату, этот код в порядке, но когда $data
не форматируется значение $data = 2036-02-18
что является неправильным значением
Может кто-нибудь помочь мне, как решить эту проблему Спасибо заранее
Пожалуйста, попробуйте это, это должно работать,
if(PHPExcel_Shared_Date::isDateTime($data)){
$cellValue = $objWorksheet->getCellByColumnAndRow($col, $row);
$InvDate= $cellValue->getValue();
if(PHPExcel_Shared_Date::isDateTime($cell)) {
$InvDate = date($format, PHPExcel_Shared_Date::ExcelToPHP($InvDate));
}
}
Благодаря вашей помощи, ребята, однако, это оказалось решением моей проблемы:
$data = $objWorksheet->getCellByColumnAndRow($col, $row);
if(!strtotime($data)) {
if(PHPExcel_Shared_Date::isDateTime($data)) {
$cellValue = $objWorksheet->getCellByColumnAndRow($col, $row)->getValue();
$dateValue = PHPExcel_Shared_Date::ExcelToPHP($cellValue);
$dateh = date('Y-m-d',$dateValue);
} else {
$dateh = "";
} else {
$st = strtotime($data);
$dateh = date('Y-m-d',$st);
}
}