PHPExcel导入Excel文件,对Excel中日期单元格处理

 

/**
 * 判断字符串是否是日期格式
 * @param $date
 * @param $format
 * @return bool
 */
function is_date($date, $format = 'Y-m-d')
{
  if (!$date || $date == '0000-00-00') return false;
  $unix_time_1 = strtotime($date);
  if (!is_numeric($unix_time_1)) return false; //非数字格式
  $format_date = date($format, $unix_time_1);
  $unix_time_2 = strtotime($format_date);
  return ($unix_time_1 == $unix_time_2);
}

/**
 * excel数据导入  日期格式化
 * @param $date
 * @return false|string
 */
function get_date_by_excel($date)
{
  if (!$date || $date == '0000-00-00') return null;

  $unix_time = \PHPExcel_Shared_Date::ExcelToPHP($date);

  return ($unix_time < 0) ? date('Y-m-d', $unix_time) : date('Y-m-d', strtotime(gmdate('Y-m-d', $unix_time)));
}

/**
 * 获取excel日期格式化结果
 * @param $date string excel日期单元格字符串
 * @param $default string  $date未非日期时返回默认日期
 * @return string
 */
function excel_date_format($date, $default = '')
{
  if ($default == '') $default = date('Y-m-d');

  if (is_date($date)) return $date;

  return get_date_by_excel($date) ?: $default;
}

 

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-12-20
  • 2021-12-13
  • 2021-07-16
  • 2021-07-11
  • 2021-10-23
  • 2022-12-23
猜你喜欢
  • 2021-10-29
  • 2022-12-23
  • 2022-01-17
  • 2021-08-10
  • 2022-12-23
  • 2021-12-10
  • 2021-11-11
相关资源
相似解决方案