DateTime-Lite
view release on metacpan or search on metacpan
lib/DateTime/Lite/JA.pod view on Meta::CPAN
$dt->datetime;
$dt->ymd; # "2026-04-10"
$dt->ymd('/'); # "2026/04/10"
$dt->hms; # "06:10:30"
$dt->dmy('.'); # "10.04.2026"
$dt->mdy('-'); # "10-04-2026"
$dt->rfc3339; # "2026-04-10T06:10:30+09:00"
$dt->strftime('%Y-%m-%d %H:%M:%S'); # "2026-04-10 06:10:30"
$dt->format_cldr('yyyy/MM/dd'); # "2026/04/10"ï¼Unicode CLDRãã¿ã¼ã³ï¼
"$dt"; # iso8601ï¼ã¾ãã¯formatterï¼ã«ããæååå
# æ¥ææ¼ç®
$dt->add( years => 1, months => 2, days => 3,
hours => 4, minutes => 5, seconds => 6 );
$dt->subtract( weeks => 2 );
my $dur = DateTime::Lite::Duration->new( months => 6 );
$dt->add_duration( $dur );
$dt->subtract_duration( $dur );
my $diff = $dt->subtract_datetime( $other ); # Duration
my $abs_diff = $dt->subtract_datetime_absolute( $other ); # æå»ã®ã¿ã® Duration
my $dd = $dt->delta_days( $other );
my $dmd = $dt->delta_md( $other );
my $dms = $dt->delta_ms( $other );
# ãã¥ã¼ãã¼ã¿
$dt->set( year => 2027, month => 1, day => 1 );
$dt->set_year(2027);
$dt->set_month(1);
$dt->set_day(1);
$dt->set_hour(0);
$dt->set_minute(0);
$dt->set_second(0);
$dt->set_nanosecond(0);
$dt->set_time_zone('America/New_York');
$dt->set_locale('en-US'); # æ°ãã DateTime::Locale::FromCLDR ãªãã¸ã§ã¯ããè¨å®
$dt->set_formatter( $formatter );
$dt->truncate( to => 'day' ); # 'year','month','week','day','hour','minute','second'
# second, minute, hour, day, week, local_week, month, quarter,
# year, decade, century ã«å¯¾å¿
$dt->end_of( 'month' );
say $dt; # 2026-04-30T23:59:59.999999999
$dt->start_of( 'month' );
say $dt; # 2026-04-01T00:00:00
# æ¯è¼
my @sorted = sort { $a <=> $b } @datetimes; # ãªã¼ãã¼ãã¼ãããã <=>
DateTime::Lite->compare( $dt1, $dt2 ); # -1, 0, 1
DateTime::Lite->compare_ignore_floating( $dt1, $dt2 );
$dt->is_between( $lower, $upper );
# ã¯ã©ã¹ã¬ãã«ã®è¨å®
DateTime::Lite->DefaultLocale('fr-FR');
my $class = $dt->duration_class; # 'DateTime::Lite::Duration'
# 宿°
DateTime::Lite::INFINITY(); # +Inf
DateTime::Lite::NEG_INFINITY(); # -Inf
DateTime::Lite::NAN(); # NaN
DateTime::Lite::MAX_NANOSECONDS(); # 1_000_000_000
DateTime::Lite::SECONDS_PER_DAY(); # 86400
# ã¨ã©ã¼å¦ç
my $dt2 = DateTime::Lite->new( %bad_args ) ||
die( DateTime::Lite->error );
# ãã§ã¼ã³å¼ã³åºã:
# 䏿£ãªå¼ã³åºã㯠NullObject ãè¿ãããããã§ã¼ã³ãå®å
¨ã«ç¶ç¶ã§ããã
# ãã§ã¼ã³ã®æå¾ã®å¼ã³åºãã®æ»ãå¤ã確èªãããã¨ã
my $result = $dt->some_method->another_method ||
die( $dt->error );
=head1 VERSION
v0.6.8
=head1 DESCRIPTION
C<DateTime::Lite>ã¯ãL<DateTime>ã®è»½éãã¤ã¡ã¢ãªå¹çã®é«ãããããã¤ã³ä»£æ¿ã¢ã¸ã¥ã¼ã«ã§ãã主ãªè¨è¨ç®æ¨ã¯æ¬¡ã®ã¨ããã§ãã
=over 4
=item ä¾åé¢ä¿ãå°ãªããããã¨
å®è¡æã®ä¾åé¢ä¿ã¯ãL<DateTime::Lite::TimeZone>ï¼SQLiteã«æ ¼ç´ãããã¿ã¤ã ã¾ã¼ã³ãã¼ã¿ã忢±ããL<DBD::SQLite>ãå©ç¨ã§ããªãå ´åã¯L<DateTime::TimeZone>ã¸èªåçã«ãã©ã¼ã«ããã¯ï¼ãL<DateTime::Local...
éãL<Specio>ãL<Params::ValidationCompiler>ãL<Try::Tiny>ãC<namespace::autoclean>ã¯å®å
¨ã«æé¤ããã¦ãã¾ãã
=item ã¡ã¢ãªä½¿ç¨éãæãããã¨
C<DateTime>ã¯å¤æ°ã®ã¢ã¸ã¥ã¼ã«ãé£éçã«èªã¿è¾¼ããããC<%INC>ã大ããè¨ãã¿ã¾ããC<DateTime::Lite>ã¯ãå¿
è¦ãªãã®ã ããé
å»¶èªã¿è¾¼ã¿ãããã¨ã§ããããé¿ãã¦ãã¾ãã
=item TZifãã¤ããªããæ£ç¢ºãªã¿ã¤ã ã¾ã¼ã³ãã¼ã¿ãå¾ããã¨
C<DateTime::TimeZone>ã¯ãIANA Olsonã®I<source>ãã¡ã¤ã«ï¼C<africa>ãC<northamerica>ãªã©ï¼ãç¬èªã®ããã¹ããã¼ãµï¼C<DateTime::TimeZone::OlsonDB>ï¼ã§è§£æããé
å¸ç©ã®ãã«ãæã«ã¿ã¤ã ã¾ã¼ã³ãã¨ã«C<.pm>ãã¡...
䏿¹ãC<DateTime::Lite::TimeZone>ã¯IANAã®ã½ã¼ã¹ãã¡ã¤ã«ãå
¬å¼ã®IANAã³ã³ãã¤ã©ã§ããC<zic(1)>ã§ã³ã³ãã¤ã«ãããã®çµæå¾ãããTZifãã¤ããªãã¡ã¤ã«ãç´æ¥èªã¿è¾¼ã¿ã¾ããããã¯L<RFC 9636|https://...
éè¦ãªã®ã¯ãC<EST5EDT,M3.2.0,M11.1.0>ã®ããã«ããã¹ã¦ã®TZif v2+ãã¡ã¤ã«ã«åãè¾¼ã¾ãã¦ããPOSIXããã¿ã¼ã®TZæååãæ½åºããSQLiteãã¼ã¿ãã¼ã¹ã«ä¿åãã¦ããç¹ã§ãã
ãã®æååã¯ãæå¾ã®æç¤ºçãªé·ç§»ä»¥éã®ãã¹ã¦ã®æ¥ä»ã«å¯¾ãããç¹°ãè¿ãã®å¤æéè¦åã表ãã¾ããå®è¡æã«ã¯ãC<DateTime::Lite::TimeZone>ãIANAC<tzcode>ã®åç
§ã¢ã«ã´ãªãºã ãXSã§å®è£
ãããã...
=item XSã«ããããããã¹ã®é«éå
XSã¬ã¤ã¤ã¼ã¯ãCPUè² è·ã®é«ããã¹ã¦ã®ã«ã¬ã³ãã¼æ¼ç®ï¼C<_rd2ymd>ãC<_ymd2rd>ãC<_seconds_as_components>ããã¹ã¦ã®ãããç§é¢é£ãã«ãã¼ï¼ãæ
å½ãã¾ããããã«ãå
ã®å®è£
ã«ã¯ãªãã£ãC<_rd_to_epoch...
=item äºææ§ã®ããAPI
å
¬éAPIã¯å¯è½ãªéãL<DateTime>ã«è¿ã¥ãã¦ãããããC<DateTime>ã使ã£ã¦ããæ¢åã®ã³ã¼ãã¯ãC<DateTime::Lite>ãããããã¤ã³ä»£æ¿ã¨ãã¦å©ç¨ã§ããã¯ãã§ãã
=item Unicode CLDR / BCP 47ãã±ã¼ã«ã¸ã®å®å
¨å¯¾å¿
C<DateTime>ã¯ããã±ã¼ã«ãã¨ã«äºåçæãããC<DateTime::Locale::*>ã¢ã¸ã¥ã¼ã«ã®éåã«å¶éããã¦ãã¾ããC<DateTime::Lite>ã¯ãæå¹ãªUnicode CLDR / BCP 47ãã±ã¼ã«ã¿ã°ã§ããã°ãUnicodeæ¡å¼µï¼C<-u->ï¼ãå...
my $dt = DateTime::Lite->now( locale => 'en' ); # åç´ãªå½¢å¼
my $dt = DateTime::Lite->now( locale => 'en-GB' ); # åç´ãªå½¢å¼
# ããè¤éãªå½¢å¼ã«ã対å¿
my $dt = DateTime::Lite->now( locale => 'he-IL-u-ca-hebrew-tz-jeruslm' );
my $dt = DateTime::Lite->now( locale => 'ja-Kana-t-it' );
my $dt = DateTime::Lite->now( locale => 'ar-SA-u-nu-latn' );
( run in 0.775 second using v1.01-cache-2.11-cpan-0d23b851a93 )