DateTime-Lite
view release on metacpan or search on metacpan
README-ja-JP.md 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 );
# VERSION
v0.6.8
# DESCRIPTION
`DateTime::Lite`ã¯ã[DateTime](https://metacpan.org/pod/DateTime)ã®è»½éãã¤ã¡ã¢ãªå¹çã®é«ãããããã¤ã³ä»£æ¿ã¢ã¸ã¥ã¼ã«ã§ãã主ãªè¨è¨ç®æ¨ã¯æ¬¡ã®ã¨ããã§ãã
- ä¾åé¢ä¿ãå°ãªããããã¨
å®è¡æã®ä¾åé¢ä¿ã¯ã[DateTime::Lite::TimeZone](https://metacpan.org/pod/DateTime%3A%3ALite%3A%3ATimeZone)ï¼SQLiteã«æ ¼ç´ãããã¿ã¤ã ã¾ã¼ã³ãã¼ã¿ã忢±ãã[DBD::SQLite](https://metacpan.org/pod/DBD%3A%3ASQLite)ãå©ç...
éã[Specio](https://metacpan.org/pod/Specio)ã[Params::ValidationCompiler](https://metacpan.org/pod/Params%3A%3AValidationCompiler)ã[Try::Tiny](https://metacpan.org/pod/Try%3A%3ATiny)ã`namespace::autoclean`ã¯å®å
¨ã«æé¤ããã¦ãã...
- ã¡ã¢ãªä½¿ç¨éãæãããã¨
`DateTime`ã¯å¤æ°ã®ã¢ã¸ã¥ã¼ã«ãé£éçã«èªã¿è¾¼ãããã`%INC`ã大ããè¨ãã¿ã¾ãã`DateTime::Lite`ã¯ãå¿
è¦ãªãã®ã ããé
å»¶èªã¿è¾¼ã¿ãããã¨ã§ããããé¿ãã¦ãã¾ãã
- TZifãã¤ããªããæ£ç¢ºãªã¿ã¤ã ã¾ã¼ã³ãã¼ã¿ãå¾ããã¨
`DateTime::TimeZone`ã¯ãIANA Olsonã®_source_ãã¡ã¤ã«ï¼`africa`ã`northamerica`ãªã©ï¼ãç¬èªã®ããã¹ããã¼ãµï¼`DateTime::TimeZone::OlsonDB`ï¼ã§è§£æããé
å¸ç©ã®ãã«ãæã«ã¿ã¤ã ã¾ã¼ã³ãã¨ã«`.pm`ãã¡ã...
䏿¹ã`DateTime::Lite::TimeZone`ã¯IANAã®ã½ã¼ã¹ãã¡ã¤ã«ãå
¬å¼ã®IANAã³ã³ãã¤ã©ã§ãã`zic(1)`ã§ã³ã³ãã¤ã«ãããã®çµæå¾ãããTZifãã¤ããªãã¡ã¤ã«ãç´æ¥èªã¿è¾¼ã¿ã¾ããããã¯[RFC 9636](https:...
éè¦ãªã®ã¯ã`EST5EDT,M3.2.0,M11.1.0`ã®ããã«ããã¹ã¦ã®TZif v2+ãã¡ã¤ã«ã«åãè¾¼ã¾ãã¦ããPOSIXããã¿ã¼ã®TZæååãæ½åºããSQLiteãã¼ã¿ãã¼ã¹ã«ä¿åãã¦ããç¹ã§ãã
ãã®æååã¯ãæå¾ã®æç¤ºçãªé·ç§»ä»¥éã®ãã¹ã¦ã®æ¥ä»ã«å¯¾ãããç¹°ãè¿ãã®å¤æéè¦åã表ãã¾ããå®è¡æã«ã¯ã`DateTime::Lite::TimeZone`ãIANA`tzcode`ã®åç
§ã¢ã«ã´ãªãºã ãXSã§å®è£
ããã...
- XSã«ããããããã¹ã®é«éå
XSã¬ã¤ã¤ã¼ã¯ãCPUè² è·ã®é«ããã¹ã¦ã®ã«ã¬ã³ãã¼æ¼ç®ï¼`_rd2ymd`ã`_ymd2rd`ã`_seconds_as_components`ããã¹ã¦ã®ãããç§é¢é£ãã«ãã¼ï¼ãæ
å½ãã¾ããããã«ãå
ã®å®è£
ã«ã¯ãªãã£ã`_rd_to_epoch...
- äºææ§ã®ããAPI
å
¬éAPIã¯å¯è½ãªéã[DateTime](https://metacpan.org/pod/DateTime)ã«è¿ã¥ãã¦ããããã`DateTime`ã使ã£ã¦ããæ¢åã®ã³ã¼ãã¯ã`DateTime::Lite`ãããããã¤ã³ä»£æ¿ã¨ãã¦å©ç¨ã§ããã¯ãã§ãã
- Unicode CLDR / BCP 47ãã±ã¼ã«ã¸ã®å®å
¨å¯¾å¿
`DateTime`ã¯ããã±ã¼ã«ãã¨ã«äºåçæããã`DateTime::Locale::*`ã¢ã¸ã¥ã¼ã«ã®éåã«å¶éããã¦ãã¾ãã`DateTime::Lite`ã¯ãæå¹ãªUnicode CLDR / BCP 47ãã±ã¼ã«ã¿ã°ã§ããã°ãUnicodeæ¡å¼µï¼`-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' );
ãã±ã¼ã«ãã¼ã¿ã¯ã[DateTime::Locale::FromCLDR](https://metacpan.org/pod/DateTime%3A%3ALocale%3A%3AFromCLDR)ã[Locale::Unicode::Data](https://metacpan.org/pod/Locale%3A%3AUnicode%3A%3AData)ãéãã¦åçã«è§£æ±ºãã¾ãããã®ã...
( run in 0.918 second using v1.01-cache-2.11-cpan-8f98c5d2c55 )