在Template Toolkit / Date::Manip中获取月的最后一天



我想在我的网站上提供促销活动,总是在当前月的第一天和最后一天开始和结束。

获取每月的第一天是微不足道的(它总是第一天),但我也想对每月的最后一天做同样的事情。

在文档中,它提到你可以使用Date::Manip或Date::Calc,但基于这些文档,我不清楚最好的方法来完成这一点。

在模板工具箱中显示一个月最后一天的最好方法是什么?

我得到这个工作的方式基本上是通过模板工具包插件加载Date::Calc模块。然后我将"last_day"设置为一个月中的天数。

Days_in_Month调用需要日期和月份(以处理闰年),因此我传递日期格式的结果。

这是包含日期格式的文档,这就是我得到%m的地方。

[%
    calc = date.calc;
    last_day = calc.Days_in_Month(date.format(date.now(), "%Y"), date.format(date.now(), "%m"));
%]

因此,要显示在当前月份内开始和结束的月/日范围,我这样做:

[% date.format(date.now(), "%m/01") %] - [% date.format(date.now(), "%m/") %][% last_day %]

…因为每个月的最后一天都是两位数,所以没有必要用零填充。

确保安装了Date::Calc模块。

最新更新