开始当月的结束日和结束日;开始日和;本年度结束日

时间:2014-02-05 21:23:50

标签: php

我正在尝试获取当月的当前开始日期和当月的结束日期。

它需要每个月更改一次,例如本月我需要:

$startMonth = 2014-02-01
$endMonth = 2014-02-28

我知道mktime PHP页面,但我无法理解它:http://uk3.php.net/mktime

我还需要当年的开始日和结束日:

$startYear = 2014-01-01
$endYear = 2014-12-31

我需要以上述格式,我可以使用前几个月:

$previousmonthStart = date("Y-m-d", mktime(0, 0, 0, date("m"), 0, date("Y")));
$previousmonthEnd = date("Y-m-d", mktime(0, 0, 0, date("m")-1, 1, date("Y")));

只需知道改变了什么。

1 个答案:

答案 0 :(得分:1)

因为您想使用mktime() ...

我认为今年的第一天和当年的最后一天总是(不需要mktime()):

date('Y') . '01-01'; 
date('Y') . '12-31';

对于mktime()当月的第一个和最后一个,请尝试以下操作:

$m = (integer) date('n');
$start = date('Y-m-d',mktime(1,1,1,$m,1,date('Y')));
$end   = date('Y-m-d',mktime(1,1,1,++$m,0,date('Y')));

//Considering today is 2014-02-05
echo $start; //2014-02-01
echo $end;   //2014-02-28

mktime需要小时,分钟,秒,月,日,年

$m告诉mktime将当前月份用作月份值,下一个1告诉mktime使用该月的第一天。

++$m告诉它使用下个月,0会在下个月的第一天(即当月的最后一天)前一天获得。

示例:http://codepad.org/1G7UJNni