如何使用strtotime获取一年中的最后一天作为参数?
我尝试这样做,但是最后几天的结果不正确:
$yearEnd2015 = date('Y-m-d', strtotime('last day of december this year -3'));
$yearEnd2016 = date('Y-m-d', strtotime('last day of december this year -2'));
$yearEnd2017 = date('Y-m-d', strtotime('last day of december this year -1'));
$yearEnd = date('Y-m-d', strtotime('last day of december this year'));
echo " <br>2015 : ".$yearEnd2015;
echo " <br>2016 : ".$yearEnd2016;
echo " <br>2017 : ".$yearEnd2017;
echo " <br>2018 : ".$yearEnd;
答案 0 :(得分:2)
您可以这样操作,只需将年份(12月31日)的最后一天发送到strtotime
函数,例如获取2015年最后一天的日期名称:
$yearEnd2015 = date('l', strtotime('2015-12-31'));
echo $yearEnd2015;
或者您可以将所需的年份存储在变量中(如果要在函数中使用它或年份会动态更改):例如,获取2000年至今的所有最近的日期名称:
$year = 2000;
while($year++ <= 2018) {
$yearEnd = date('l', strtotime($year . '-12-31'));
echo $yearEnd . '<br />';
}
希望我进一步推动了你。
答案 1 :(得分:1)
我认为您可以从用户输入中获得收益。你提到这个
$lastdate="-12-31";
$year=$_POST['year'];//lets say you get yearr from post
$day=date('l',strtotime($year.$lastdate));
echo $day;
答案 2 :(得分:1)
您甚至不需要strtotime(即使您可以肯定使用它)。如果您将年份作为输入参数:
$year = '2018';
$lastday = date($year.'-12-31');
echo $lastday;
这是一个简单的技巧,仅在您实际建立相同的日历日期且仅更改年份时才起作用。但是可以满足您的需求吗?
答案 3 :(得分:1)
echo date('l',strtotime(date('Y')));
答案 4 :(得分:1)
您需要编写这样的代码
$yearEnd2015 = date('Y-m-d D', strtotime('2015-12-31'));
$yearEnd2016 = date('Y-m-d D', strtotime('2016-12-31'));
$yearEnd2017 = date('Y-m-d D', strtotime('2017-12-31'));
$yearEnd = date('Y-m-d D', strtotime('2018-12-31'));
echo " <br>2015 : ".$yearEnd2015;
echo " <br>2016 : ".$yearEnd2016;
echo " <br>2017 : ".$yearEnd2017;
echo " <br>2018 : ".$yearEnd;