Template::Plugin::DateTime - A Template Plugin To Use DateTime Objects
Contents
Constructor
The constructor is exactly the same as that of Datetime.pm, except you can pass optional parameters to it
to toggle between different underlying DateTime constructors.
from_epoch
Creates a Datetime object by calling DateTime::from_epoch(). The value for the from_epoch parameter
must be a number representing UNIX epoch.
[% epoch = ... %]
[% USE date = DateTime(from_epoch = epoch) %]
now Creates a DateTime object by calling DateTime::now(). The value for the c<now> parameter is a
boolean value.
[% USE date = DateTime(now = 1) %]
[% USE date = Datetime(now = 1, time_zone => 'Asia/Tokyo') %]
today
Creates a DateTime object by calling DateTime::today(). The value for the c<today> parameter is a
boolean value.
[% USE date = DateTime(today = 1) %]
from_object
Creates a DateTime object by calling DateTime::from_object(). The value for the from_object must be
an object implementing the utc_rd_values() method, as described in DateTime.pm
[% USE date = DateTime(from_object = other_date) %]
last_day_of_month
Creates a DateTime object by calling DateTime::last_day_of_month(). The value for the
c<last_day_of_month> parameter is a boolean value, and "year" and "month" parameters must be
specified.
[% USE date = DateTime(last_day_of_month = 1, year = 2004, month = 4 ) %]
from_string
Creates a DateTime object by calling DateTime::Format::Strptime The value for the c<from_string>
parameter is a string value, and "pattern" parameters is optional and defaults to '%Y-%m-%d
%H:%M:%S'. See DateTime::Format::Strptime for other optional parameters.
[% USE date = DateTime(from_string => '2008-05-30 10:00:00', pattern => '%Y-%m-%d %H:%M:%S') %]
Description
The basic idea to use a DateTime plugin is as follows:
USE date = DateTime(year = 2004, month = 4, day = 1);
-OR-
by passing a pattern to parse a date by string using DateTime::Format::Strptime
USE date = DateTime(from_string => '2008-05-30 00:00:00', pattern => '%Y-%m-%d %H:%M:%S', time_zone => 'America/New_York');
License
This program is free software; you can redistribute it and/or modify it under the same terms as Perl
itself.
See http://www.perl.com/perl/misc/Artistic.html
perl v5.34.0 2022-06-17 Template::Plugin::DateTime(3pm)
Methods
new
This is used internally. You won't be using it from your templates.
Name
Template::Plugin::DateTime - A Template Plugin To Use DateTime Objects
See Also
DateTime DateTime::Format::Strptime Template
Synopsis
[% USE date = DateTime(year = 2004, month = 4, day = 1) %]
[% USE date = DateTime(today = 1) %]
Today is [% date.year %]/[% date.month %]/[% date.day %].
[% date.add(days => 32) %]
32 days from today is [% date.year %]/[% date.month %]/[% date.day %].
