DateUtil.php 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. <?php
  2. class DateUtil {
  3. /**
  4. * 获取某个时间段内所有月份 (包含开头结尾月份)
  5. * @param minDate
  6. * @param maxDate
  7. * @return
  8. * @throws ParseException
  9. */
  10. public static function getMonthBetweenDates($minDate, $maxDate) {
  11. $result = [];
  12. $sTime = strtotime(date('Y-m-01', strtotime($minDate)));
  13. $eTime = strtotime(date('Y-m-01', strtotime($maxDate)));
  14. $months = [];
  15. while ($sTime <= $eTime) {
  16. $months[] = date('Y-m', $sTime);
  17. $sTime = strtotime('next month', $sTime);
  18. }
  19. return $result;
  20. }
  21. /**
  22. * 获取某个时间段内所有月份 (包含开头不包含结尾月份)
  23. * @param minDate
  24. * @param maxDate
  25. * @return
  26. * @throws ParseException
  27. */
  28. public static function getMonthBetweenDatesNotEnd($minDate, $maxDate) {
  29. $result = [];
  30. $sTime = strtotime(date('Y-m-01', strtotime($minDate)));
  31. $eTime = strtotime(date('Y-m-01', strtotime($maxDate)));
  32. $months = [];
  33. while ($sTime < $eTime) {
  34. $months[] = date('Y-m', $sTime);
  35. $sTime = strtotime('next month', $sTime);
  36. }
  37. return $result;
  38. }
  39. }