我如何获得去年的开始和结束日期?
第一天总是1月1日,最后一天始终是12月31日你真的只改变附加的年份。这取决于你如何想的日期格式,你有几个可能性...
-
如果你只是想显示物理日期:如果您需要的时间戳这两个
$year = date('Y') - 1; // Get current year and subtract 1 $start = "January 1st, {$year}"; $end = "December 31st, {$year}";
-
日期:
$year = date('Y') - 1; // Get current year and subtract 1 $start = mktime(0, 0, 0, 1, 1, $year); $end = mktime(0, 0, 0, 12, 31, $year);
非常简单的东西。如果您想要,也可以手动指定哪一年。前提是一样的。
开始日期:今年
mktime(0,0,0,1,1,$year);
结束日期:
mktime(0,0,0,1,0,$year+1);
那么'$ year'在这里的价值是多少? – Kichu 2012-03-17 06:18:07
并且不认为此函数已被弃用,只有当您使用它没有参数时,才会显示使用time()函数的E_STRICT通知。使用这个参数的功能还是不错的。 – 2012-03-17 06:18:18
$年是你想要的年份的价值。如果你想要2012年1月1日和2012年12月31日,年份将是2012年。 – 2012-03-17 06:18:55
检查这个东西
$currentY = date('Y');
$lastyearS = mktime(0, 0, 0, 1, 1, $currentY-1)."<br/>";
$lastyearE = mktime(0, 0, 0, 12, 31, $currentY-1)."<br/>";
echo date('Y-m-d',$lastyearS)."<br/>";echo date('Y-m-d',$lastyearE);
想,如果你当月是月或有30天
echo date('Y-12-t', strtotime(date('Y-m-d'))); // if current month is february (2015-02-01) than it gives 2015-02-28
会给你不准确的结果
解决方案的一个月:
因此,要获得一个一年的结束日期准确的结果,请尝试以下
$start_date = date("Y-01-01", strtotime("-1 year"));// get start date from here
$end_date = date("Y-12-t", strtotime($start_date));
(OR)的代码
$last_year_last_month_date = date("Y-12-01", strtotime("-1 year"));
$end_date = date("Y-12-t", strtotime($last_year_last_month_date));
您可以通过使用下面的做到这一点。希望它能帮助别人。
//to get start date of previous year
echo date("d-m-y",strtotime("last year January 1st"));
//to get end date of previous year
echo date("d-m-y",strtotime("last year December 31st"));
你能详细解释一下以便得到正确答案吗? – 2012-03-17 06:24:24
全年从1月1日开始,到12月31日结束,不幸的是! – Sourav 2012-03-17 06:25:01