eternalistic
8/3/2018 - 5:47 PM

Combine two date values into one

Date 1: 1534489200 Date 2: 1534662000

Output: August 17, 2018 and August 19, 2018 Combined: August 17–19, 2018

<?php

$start_date = $node->field_event_date['und']['0']['value'];  
$end_date = $node->field_event_date['und']['0']['value2'];

if ($end_date != '') {
  $year1 = date('Y', $start_date);
  $year2 = date('Y', $end_date);
  $month1 = date('m', $start_date);
  $month2 = date('m', $end_date);

  if ($start_date < $end_date) {
    if ($year1 != $year2) {
      $event_date = date('F j, Y', $start_date) . ' to ' . date('F j, Y', $end_date);
    }
    else {
      if ($month1 != $month2) {
        $event_date = date('F j', $start_date) . '&ndash;' . date('F j', $end_date) . ', '. date('Y', $end_date);
      }
      else {
        $event_date = date('F j', $start_date) . '&ndash;' . date('j', $end_date) . ', '. date('Y', $end_date);
      }
    }
  }
  else {
    $event_date = date('F j, Y', $start_date);
  }
}  
else {
  $event_date = date('F j, Y', $start_date);  
}
echo $event_date;
?>