Return all dates between two dates in an array in PHP


To return all dates between two dates, the code is as follows −

Example

 Live Demo

<?php
   function displayDates($date1, $date2, $format = 'd-m-Y' ) {
      $dates = array();
      $current = strtotime($date1);
      $date2 = strtotime($date2);
      $stepVal = '+1 day';
      while( $current <= $date2 ) {
         $dates[] = date($format, $current);
         $current = strtotime($stepVal, $current);
      }
      return $dates;
   }
   $date = displayDates('2019-11-10', '2019-11-20');
   var_dump($date);
?>

Output

This will produce the following output−

array(11) {
   [0]=>
   string(10) "10-11-2019"
   [1]=>
   string(10) "11-11-2019"
   [2]=>
   string(10) "12-11-2019"
   [3]=>
   string(10) "13-11-2019"
   [4]=>
   string(10) "14-11-2019"
   [5]=>
   string(10) "15-11-2019"
   [6]=>
   string(10) "16-11-2019"
   [7]=>
   string(10) "17-11-2019"
   [8]=>
   string(10) "18-11-2019"
   [9]=>
   string(10) "19-11-2019"
   [10]=>
   string(10) "20-11-2019" 
}

Updated on: 27-Dec-2019

2K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements