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.

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 HH:MI:SS

Zeit in ISO-Darstellung.

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

VERSION

1.163

AUTHOR

Frank Seitz, http://fseitz.de/

COPYRIGHT

Copyright (C) 2019 Frank Seitz

LICENSE

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