Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- // Vladimir Zhelnov // neatek.ru // neatek.pw
- // get dates between 2 dates. ;)
- function getArrayDates($date1, $date2, $timestamp = false) {
- $period = new DatePeriod(
- new DateTime(date('Y-m-d', strtotime($date1)) ),
- new DateInterval('P1D'),
- new DateTime(date('Y-m-d', strtotime($date2. "+1 days")))
- );
- $array=array();
- foreach( iterator_to_array($period) as $date) {
- if(is_string($date->format('Y-m-d'))) {
- if($timestamp)
- $array[] = (int) strtotime($date->format('Y-m-d'));
- else
- $array[] = $date->format('Y-m-d');
- }
- }
- return $array;
- }
- /*
- Usage : getArrayDates('2017-06-14', '2017-07-01');
- Result:
- array(18) {
- [0]=>
- string(10) "2017-06-14"
- [1]=>
- string(10) "2017-06-15"
- [2]=>
- string(10) "2017-06-16"
- [3]=>
- string(10) "2017-06-17"
- [4]=>
- string(10) "2017-06-18"
- [5]=>
- string(10) "2017-06-19"
- [6]=>
- string(10) "2017-06-20"
- [7]=>
- string(10) "2017-06-21"
- [8]=>
- string(10) "2017-06-22"
- [9]=>
- string(10) "2017-06-23"
- [10]=>
- string(10) "2017-06-24"
- [11]=>
- string(10) "2017-06-25"
- [12]=>
- string(10) "2017-06-26"
- [13]=>
- string(10) "2017-06-27"
- [14]=>
- string(10) "2017-06-28"
- [15]=>
- string(10) "2017-06-29"
- [16]=>
- string(10) "2017-06-30"
- [17]=>
- string(10) "2017-07-01"
- }
- OR TIMESTAMPS : Usage : getArrayDates('2017-06-14', '2017-07-01', true);
- array(18) {
- [0]=>
- int(1497398400)
- [1]=>
- int(1497484800)
- [2]=>
- int(1497571200)
- [3]=>
- int(1497657600)
- [4]=>
- int(1497744000)
- [5]=>
- int(1497830400)
- [6]=>
- int(1497916800)
- [7]=>
- int(1498003200)
- [8]=>
- int(1498089600)
- [9]=>
- int(1498176000)
- [10]=>
- int(1498262400)
- [11]=>
- int(1498348800)
- [12]=>
- int(1498435200)
- [13]=>
- int(1498521600)
- [14]=>
- int(1498608000)
- [15]=>
- int(1498694400)
- [16]=>
- int(1498780800)
- [17]=>
- int(1498867200)
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement