NAME

Quiq::Epoch - Ein Zeitpunkt

BASE CLASS

Quiq::Object

GLOSSARY

Epoch-Wert

Anzahl der Sekunden seit 1.1.1970, 0 Uhr UTC in hoher Auflösung, also mit Nachkommastellen.

ISO-Zeitangabe

Zeitangabe in der Darstellung YYYY-MM-DD HH:MI:SS.X.

DESCRIPTION

Ein Objekt der Klasse repräsentiert einen Zeitpunkt. Die Klasse implementiert Operationen auf einem solchen Zeitpunkt. Der Zeitpunkt ist hochauflösend, umfasst also auch Sekundenbruchteile.

METHODS

Konstruktor

new() - Konstruktor

Synopsis

  $t = $class->new;
  $t = $class->new($epoch);
  $t = $class->new($iso);

Description

Instantiiere ein Zeitpunkt-Objekt für Epoch-Wert $epoch bzw. ISO-Zeitangabe $iso, letztere interpretiert in der lokalen Zeitzone, und liefere dieses Objekt zurück. Ist kein Argument angegeben, wird der aktuelle Zeitpunkt genommen.

Zeitkomponenten

dayOfWeek() - Wochentagsnummer

Synopsis

  $i = $t->dayOfWeek;

Returns

Integer

Description

Liefere Wochentagsnummer im Bereich 0-6, 0 = Sonntag.

dayAbbr() - Abgekürzter Wochentagsname

Synopsis

  $abbr = $ti->dayAbbr;

Returns

String

Description

Liefere abgekürzten Wochentagsnamen (So, Mo, Di, Mi, Do, Fr, Sa).

dayName() - Wochentagsname

Synopsis

  $name = $ti->dayName;

Returns

String

Description

Liefere Wochentagsname (Sonntag, Montag, Dienstag, Mittwoch, Donnerstag, Freitag, Samstag).

Zeit-Arithmetik

minus() - Verschiebe Zeitpunkt in Vergangenheit

Synopsis

  $t = $t->minus($duration);

Arguments

$duration

Dauer, um die der Zeitpunkt in die Vergangenheit verschoben wird. Die Dauer wird wie beim Konstruktor von Quiq::Duration angegeben.

Returns

Geändertes Epoch-Objekt (für Method-Chaining)

Description

Verschiebe den Zeitpunkt um Dauer $duration in die Vergangenheit.

plus() - Verschiebe Zeitpunkt in Zukunft

Synopsis

  $t = $t->plus($duration);

Arguments

$duration

Dauer, um die der Zeitpunkt in die Zukunft verschoben wird. Die Dauer wird wie beim Konstruktor von Quiq::Duration angegeben.

Returns

Geändertes Epoch-Objekt (für Method-Chaining)

Description

Verschiebe den Zeitpunkt um Dauer $duration in die Zukunft.

Externe Repräsentation

epoch() - Liefere Epoch-Wert

Synopsis

  $epoch = $t->epoch;

Description

Liefere den Epoch-Wert des Zeitpunkts.

Example

  Quiq::Epoch->new->epoch;
  =>
  1464342621.73231

localtime() - Zeitkomponenten in lokaler Zeit

Synopsis

  ($s,$mi,$h,$d,$m,$y) = $t->localtime;

Description

Liefere die Zeitkomponenten Sekunden, Minuten, Stunden, Tag, Monat, Jahr in lokaler Zeit. Im Unterschied zu localtime() aus dem Perl Core sind Monat ($m) und Jahr (y) "richtig" wiedergegeben. d.h die Komponente $m muss nicht um 1 erhöht und die Komponente $y muss nicht um 1900 erhöht werden.

Example

  Quiq::Epoch->new(1559466751)->localtime;
  =>
  (31,12,11,2,6,2019) # 2019-06-02 11:12:31
  
  (in Zeitzone MESZ)

as() - Erzeuge externe Darstellung

Synopsis

  $str = $t->as($fmt);

Arguments

$fmt

Formatangabe. Folgende Formate sind definiert:

YYYY-MM-DD

Datum in ISO-Darstellung.

YYYY-MM-DD HH:MI:SS

Zeit in ISO-Darstellung.

YYYY-MM-DD HH:MI:SS.XXX

Zeit in ISO-Darstellung mit Nachkommastellen. Die Anzahl der X gibt die Anzahl der Nachkommastellen an (in obiger Angabe drei).

Returns

Zeit-Darstellung (String)

Description

Liefere eine externe Darstellung des Zeitpunkts gemäß Formatangabe $fmt. Der Zeitpunkt wird in der lokalen Zeitzone interpretiert.

Example

  Quiq::Epoch->new->as('YYYY-MM-DD HH:MI:SS');
  =>
  2016-05-27 11:50:21

asIso() - Erzeuge ISO-Darstellung

Synopsis

  $str = $t->asIso;
  $str = $t->asIso($x);

Arguments

$x (Default: 0)

Anzahl der Nachkommastellen.

Returns

Zeit-Darstellung (String)

VERSION

1.174

AUTHOR

Frank Seitz, http://fseitz.de/

COPYRIGHT

Copyright (C) 2020 Frank Seitz

LICENSE

This code is free software; you can redistribute it and/or modify it under the same terms as Perl itself.