From 00bca5e0c84d40d6695841b82ad6e4a01ca0a851 Mon Sep 17 00:00:00 2001 From: Chrisleung Date: Fri, 8 Jan 2021 11:39:24 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dcal=5Fdays=5Fin=5Fmonth?= =?UTF-8?q?=E7=9A=84month=E5=8F=82=E6=95=B0=E9=94=99=E8=AF=AF,=E5=AF=BC?= =?UTF-8?q?=E8=87=B4=E8=AE=A1=E7=AE=97=E8=B7=A8=E5=B9=B4=E6=97=B6=E9=97=B4?= =?UTF-8?q?=E6=88=B3=E6=8A=A5=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- extend/fast/Date.php | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/extend/fast/Date.php b/extend/fast/Date.php index 8671476d5..d8f7ab467 100644 --- a/extend/fast/Date.php +++ b/extend/fast/Date.php @@ -183,12 +183,14 @@ class Date mktime(23, 59, 59, $month, $day - date("w", mktime(0, 0, 0, $month, $day, $year)) + 7 - 7 * (-$offset), $year); break; case 'month': - $time = $position ? mktime(0, 0, 0, $month + $offset, 1, $year) : mktime(23, 59, 59, $month + $offset, cal_days_in_month(CAL_GREGORIAN, $month + $offset, $year), $year); + $_timestamp=mktime(0, 0, 0, $month + $offset, 1, $year); + $time = $position ? $_timestamp : mktime(23, 59, 59, $month + $offset, cal_days_in_month(CAL_GREGORIAN, date("m",$_timestamp), date("Y",$_timestamp)), $year); break; case 'quarter': + $_month=date("m",mktime(0, 0, 0, (ceil(date('n', mktime(0, 0, 0, $month, $day, $year)) / 3) + $offset) * 3, $day, $year)); $time = $position ? mktime(0, 0, 0, 1 + ((ceil(date('n', mktime(0, 0, 0, $month, $day, $year)) / 3) + $offset) - 1) * 3, 1, $year) : - mktime(23, 59, 59, (ceil(date('n', mktime(0, 0, 0, $month, $day, $year)) / 3) + $offset) * 3, cal_days_in_month(CAL_GREGORIAN, (ceil(date('n', mktime(0, 0, 0, $month, $day, $year)) / 3) + $offset) * 3, $year), $year); + mktime(23, 59, 59, (ceil(date('n', mktime(0, 0, 0, $month, $day, $year)) / 3) + $offset) * 3, cal_days_in_month(CAL_GREGORIAN, $_month, $year), $year); break; case 'year': $time = $position ? mktime(0, 0, 0, 1, 1, $year + $offset) : mktime(23, 59, 59, 12, 31, $year + $offset); -- Gitee