Perl 在模板工具箱中获取月的最后一天/Date::Manip

Perl 在模板工具箱中获取月的最后一天/Date::Manip,perl,date,template-toolkit,Perl,Date,Template Toolkit,我想在我的网站上提供促销活动,促销活动总是在当月的第一天和最后一天开始和结束 得到一个月的第一天是微不足道的(总是第一天),但我也希望在一个月的最后一天做同样的事情 其中提到可以使用Date::Manip或Date::Calc,但基于这些文档,我不清楚实现这一点的最佳方法 在TemplateToolkit中显示一个月最后一天的最佳方式是什么?我的工作方式基本上是通过TemplateToolkit插件加载Date::Calc模块。然后我将“last_day”设置为该月的天数 Days_in_Mon

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

得到一个月的第一天是微不足道的(总是第一天),但我也希望在一个月的最后一天做同样的事情

其中提到可以使用Date::Manip或Date::Calc,但基于这些文档,我不清楚实现这一点的最佳方法


在TemplateToolkit中显示一个月最后一天的最佳方式是什么?

我的工作方式基本上是通过TemplateToolkit插件加载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模块。如果您有它,模板工具包将加载它。

我的工作方式基本上是通过模板工具包插件加载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模块。如果您有,模板工具包将加载它。

这是下个月第一天的前一天,所以添加一个月,然后将日期设置为1,然后减去一天。同意,这是perl中执行此操作的基本方法。。。但我一直在寻找一种在模板语言本身中实现它的方法。它是下个月第一天的前一天,所以加上一个月,然后将天设置为1,然后减去一天。同意,这是在perl中实现它的基本方法。。。但我一直在寻找一种在模板语言本身中实现这一点的方法。