ravand
دوشنبه 02 شهریور 1394, 18:09 عصر
برنامه ای نوشتید که تاریخ های بین دو تاریخ رو نمایش بده؟
مثلا
از تاریخ
1394/06/24
تا تاریخ:
1394/07/01
رو پشت سر هم چاپ کنه
من یه میلادیش رو گیر اوردم ولی شمسی رو نه.
من امدم از این برنامه استفاده کردم:
<?phpfunction getDatesFromRange($start, $end) {
$interval = new DateInterval('P1D');
$realEnd = new DateTime($end);
$realEnd->add($interval);
$period = new DatePeriod(
new DateTime($start),
$interval,
$realEnd
);
foreach($period as $date) {
$array[] = $date->format('Y/m/d');
}
foreach($array as $tarikh) {
echo($tarikh) ."<br/>";
}
return $array;
}
getDatesFromRange('1394/06/24', '1394/06/31');
?>
ولی یه همچین خروجی به ما میده:
1394/06/24
1394/06/25
1394/06/26
1394/06/27
1394/06/28
1394/06/29
1394/06/30
1394/07/01
به جای 31 شهریور میده 1 مهر.
متشکرم.
مثلا
از تاریخ
1394/06/24
تا تاریخ:
1394/07/01
رو پشت سر هم چاپ کنه
من یه میلادیش رو گیر اوردم ولی شمسی رو نه.
من امدم از این برنامه استفاده کردم:
<?phpfunction getDatesFromRange($start, $end) {
$interval = new DateInterval('P1D');
$realEnd = new DateTime($end);
$realEnd->add($interval);
$period = new DatePeriod(
new DateTime($start),
$interval,
$realEnd
);
foreach($period as $date) {
$array[] = $date->format('Y/m/d');
}
foreach($array as $tarikh) {
echo($tarikh) ."<br/>";
}
return $array;
}
getDatesFromRange('1394/06/24', '1394/06/31');
?>
ولی یه همچین خروجی به ما میده:
1394/06/24
1394/06/25
1394/06/26
1394/06/27
1394/06/28
1394/06/29
1394/06/30
1394/07/01
به جای 31 شهریور میده 1 مهر.
متشکرم.