NAME
Date::Format - Date formating subroutines
SYNOPSIS
use
Date::Format;
@lt
=
localtime
(
time
);
time2str(
$template
,
time
);
strftime(
$template
,
@lt
);
time2str(
$template
,
time
,
$zone
);
strftime(
$template
,
@lt
,
$zone
);
ctime(
time
);
asctime(
@lt
);
ctime(
time
,
$zone
);
asctime(
@lt
,
$zone
);
DESCRIPTION
This module provides routines to format dates into ASCII strings. They correspond to the C library routines strftime
and ctime
.
- time2str(TEMPLATE, TIME [, ZONE])
-
time2str
convertsTIME
into an ASCII string using the conversion specification given inTEMPLATE
.ZONE
if given specifies the zone which the output is required to be in,ZONE
defaults to your current zone. - strftime(TEMPLATE, TIME [, ZONE])
-
strftime
is similar totime2str
with the exception that the time is passed as an array, such as the array returned bylocaltime
. - ctime(TIME [, ZONE])
-
ctime
callstime2str
with the given arguments using the conversion specification"%a %b %e %T %Y\n"
- asctime(TIME [, ZONE])
-
asctime
callstime2str
with the given arguments using the conversion specification"%a %b %e %T %Y\n"
MULTI-LANGUAGE SUPPORT
Date::Format is capable of formating into several languages by creating a language specific object and calling methods, see Date::Language
my
$lang
= Date::Language->new(
'German'
);
$lang
->time2str(
"%a %b %e %T %Y\n"
,
time
);
I am open to suggestions on this.
CONVERSION SPECIFICATION
Each conversion specification is replaced by appropriate characters as described in the following list. The appropriate characters are determined by the LC_TIME category of the program's locale.
%% PERCENT
%a
day of the week abbr
%A
day of the week
%b
month abbr
%B
month
%c
MM/DD/YY HH:MM:SS
%C
ctime
format
: Sat Nov 19 21:05:57 1994
%d
numeric day of the month,
with
leading zeros (eg 01..31)
%e
like
%d
, but a leading zero is replaced by a space (eg 1..32)
%D
MM/DD/YY
%G
GPS week number (weeks since January 6, 1980)
%h
month abbr
%H
hour, 24 hour clock, leading 0's)
%I
hour, 12 hour clock, leading 0's)
%j
day of the year
%k
hour
%l
hour, 12 hour clock
%L
month number, starting
with
1
%m
month number, starting
with
01
%M
minute, leading 0's
%n
NEWLINE
%o
ornate day of month --
"1st"
,
"2nd"
,
"25th"
, etc.
%p
AM or PM
%P
am or pm (Yes
%p
and
%P
are backwards :)
%q
Quarter number, starting
with
1
%r
time
format
: 09:05:57 PM
%R
time
format
: 21:05
%s
seconds since the Epoch, UCT
%S
seconds, leading 0's
%t
TAB
%T
time
format
: 21:05:57
%U
week number, Sunday as first day of week
%w
day of the week, numerically, Sunday == 0
%W
week number, Monday as first day of week
%x
date
format
: 11/19/94
%X
time
format
: 21:05:57
%y
year (2 digits)
%Y
year (4 digits)
%Z
timezone in ascii. eg: PST
%z
timezone in
format
-/+0000
%d
, %e
, %H
, %I
, %j
, %k
, %l
, %m
, %M
, %q
, %y
and %Y
can be output in Roman numerals by prefixing the letter with O
, e.g. %OY
will output the year as roman numerals.
LIMITATION
The functions in this module are limited to the time range that can be represented by the time_t data type, i.e. 1901-12-13 20:45:53 GMT to 2038-01-19 03:14:07 GMT.
AUTHOR
Graham Barr <gbarr@pobox.com>
COPYRIGHT
Copyright (c) 1995-2009 Graham Barr. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.