NAME
Quiq::Formatter - Formatierung von Werten
BASE CLASS
METHODS
Zahlen
normalizeNumber() - Normalisiere Zahldarstellung
Synopsis
$x = $class->normalizeNumber($x);
Description
Entferne unnötige Nullen von einer Zahl, forciere als Dezimaltrennzeichen einen Punkt (anstelle eines Komma) und liefere das Resultat zurück.
Example
123.456000 -> 123.456
70.00 -> 70
0.0 -> 0
-0.0 -> 0
007 -> 7
23,7 -> 23.7
readableNumber() - Zahl mit Trenner an Tausender-Stellen
Synopsis
$str = $class->readableNumber($x);
$str = $class->readableNumber($x,$sep);
Description
Formatiere eine Zahl $x mit Tausender-Trennzeichen $sep. Per Default ist $sep ein Punkt (.
). Handelt es sich bei $x um eine Zahl mit Nachkomma-Stellen, wird der Punkt durch ein Komma (,
) ersetzt.
Example
1 -> 1
12 -> 12
12345 -> 12.345
-12345678 -> -12.345.678
-12345.678 -> -12.345,678
Datums/Zeitangaben
reducedIsoTime() - Erzeuge reduzierte ISO-Zeitdarstellung
Synopsis
$str = $class->reducedIsoTime($now,$time);
Arguments
Returns
Reduzierte ISO-Zeitdarstellung (String)
Description
Erzeuge eine "reduzierte" ISO-Zeitdarstellung für Zeitpunkt $time relativ zu Bezugszeitpunkt $now. Die unreduzierte ISO-Zeitdarstellung hat das Format:
YYYY-MM-DD HH:MM:SS
Die reduzierte Dastellung ist identisch aufgebaut, nur dass alle führenden Zeitkomponenten fehlen, die zum Bezugszeitpunkt $now identisch sind.
Diese Darstellung ist nützlich, um in einer Liste von Zeiten die nah am aktuellen Zeipunkt liegenden Zeiten leichter erkennen zu können, z.B. in einer Verzeichnisliste:
$ quiq-ls ~/dvl
| rwxr-xr-x | xv882js | rvgroup | 2018-07-07 07:08:17 | | d | ~/dvl/.cotedo |
| rwxr-xr-x | xv882js | rvgroup | 2018-06-29 11:06:38 | | d | ~/dvl/.jaz |
| rwxr-xr-x | xv882js | rvgroup | 17 07:29:51 | | d | ~/dvl/Blob |
| rwxr-xr-x | xv882js | rvgroup | 17 07:29:52 | | d | ~/dvl/Export |
| rwxr-xr-x | xv882js | rvgroup | 17 07:29:52 | | d | ~/dvl/Language |
| rwxr-xr-x | xv882js | rvgroup | 17 07:29:52 | | d | ~/dvl/Library |
| rwxr-xr-x | xv882js | rvgroup | 37:47 | | d | ~/dvl/Package |
Examples
Keine gemeinsame Zeitkomponente:
Quiq::Formatter->reducedIsoTime(1558593179,1530940097);
==>
2018-07-07 07:08:17
Jahr und Monat sind gemeinsam:
Quiq::Formatter->reducedIsoTime(1558593179,1558070991);
==>
17 07:29:51
Alle Komponenten, bis auf die Sekunden, sind identisch:
Quiq::Formatter->reducedIsoTime(1558593179,1558593168);
==>
48
(alles in Zeitzone MESZ)
VERSION
1.180
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.