The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Quiq::Converter - Konvertierung von Werten

BASE CLASS

Quiq::Object

METHODS

Zeichenketten

newlineToName() - Liefere Namen einer Newline-Zeichenkette

Synopsis

    $nlName = $this->newlineToName($nl);

Description

Liefere den "Namen" einer Newline-Zeichenkette, also "LF", "CRLF" oder "CR".

snakeCaseToCamelCase() - Wandele Snake Case nach Camel Case

Synopsis

    $camel = $this->snakeCaseToCamelCase($snake);

Description

Wandele einen in Snake Case geschriebenen Bezeichner in einen Camel Case Bezeichner und liefere diesen zurück.

Snake Case:

    ims-apply-delta-row-by-row
    ims_apply_delta_row_by_row

Camel Case:

    imsApplyDeltaRowByRow

strToHex() - Wandele String in Hex-Darstellung

Synopsis

    $strHex = $this->strToHex($str);

textToHtml() - Wandele Text nach HTML

Synopsis

    $html = $this->textToHtml($text);

Description

Ersetze in $text die Zeichen &, < und > durch HTML-Entities und liefere das Resultat zurück.

doubleDecode() - Wandele doppelt enkodiertes UTF-8 zurück

Synopsis

    $class->doubleDecode(\$str);
    $newStr = $class->doubleDecode($str);

Description

Wandele doppelt enkodiertes UTF-8 zurück in einfach enkodiertes UTF-8. Behandelt werden aktuell nur deutsche Umlaute und Sz.

umlautToAscii() - Wandele deutsche Umlaute und SZ nach ASCII

Synopsis

    $class->umlautToAscii(\$str);
    $newStr = $class->umlautToAscii($str);

Description

Schreibe ä, Ä, ö, Ö, ü, Ü, ß in ae, Ae, oe, Oe, ue, Ue, ss um und liefere das Resultat zurück. Wird eine Stringreferenz angegeben, findet die Umschreibung "in-place" statt.

Die Methode setzt voraus, dass der String korrekt dekodiert wurde.

Zahlen

germanToProgramNumber() - Wandele deutsche Zahldarstellung in Zahl

Synopsis

    $x = $this->germanToProgramNumber($germanX);

Description

Wandele deutsche Zahldarstellung mit Punkt (.) als Stellen-Trenner und Komma (,) als Dezimaltrennzeichen in eine Zahl der Programmiersprache und liefere das Resultat zurück.

intToWord() - Wandele positive ganze Zahl in Wort über Alphabet

Synopsis

    $word = $this->intToWord($n);
    $word = $this->intToWord($n,$alphabet);

Returns

Zeichenkette

Description

Wandele positive ganze Zahl $n in ein Wort über dem Alphabet $alphabet und liefere dieses zurück. Für 0 liefere einen Leerstring.

Das Alphabet, über welchem die Worte gebildet werden, wird in Form einer Zeichenkette angegeben, in der jedes Zeichen einmal vorkommt. Per Default wird das Alphabet

    'ABCDEFGHIJKLMNOPQRSTUVWXYZ'

verwendet. Die Funktion implementiert folgende Abbildung:

    0 -> ''
    1 -> 'A'
    2 -> 'B'
    
    ...
    26 -> 'Z'
    27 -> 'AA'
    28 -> 'AB'
    ...
    52 -> 'AZ'
    53 -> 'BA'
    ...

Längen

ptToPx() - Rechne Punkt (pt) in Pixel (px) um

Synopsis

    $px = $this->ptToPx($pt);

Alias

pointToPixel()

Arguments

$pt (Number)

Punkt-Wert

Returns

Pixel-Wert (Number)

Description

Rechne Punkt in Pixel um und liefere das Resultat zurück.

    1 Punkt = 1/0.75 Pixel

pxToPt() - Rechne Pixel (px) in Punkt (pt) um

Synopsis

    $pt = $this->pxToPt($px);

Alias

pixelToPoint()

Arguments

$px (Number)

Pixel-Wert

Returns

Punkt-Wert (Number)

Description

Rechne Pixel in Punkt um und liefere das Resultat zurück.

    1 Pixel = 0.75 Punkt

Zeitdarstellung

epochToDuration() - Wandele Sekunden in (lesbare) Angabe einer Dauer

Synopsis

    $str = $class->epochToDuration($epoch,$truncate,$format);

Alias

secondsToDuration()

Description

Wandele eine Zeitangabe in Sekunden in eine Zeichenkette der Form

    HH:MM:SS  ($format nicht angegeben oder 1)

oder

    HHhMMmSSs ($format == 2)

oder

    HhMmSs ($format == 3)

timestampToEpoch() - Wandele Timestamp in lokaler Zeit nach Epoch

Synopsis

    $t = $class->timestampToEpoch($timestamp);

Description

Es wird vorausgesetzt, dass der Timestamp das Format

    YYYY-MM-DD HH24:MI:SSXFF

hat.

Fehlende Teile werden als 0 angenommen, so dass insbesondere auch folgende Formate gewandelt werden können:

    YYYY-MM-DD HH24:MI:SS    (keine Sekundenbruchteile)
    YYYY-MM-DD               (kein Zeitanteil)

Diese Methode ist z.B. nützlich, um einen Oracle-Timestamp (in lokaler Zeit) nach Epoch zu wandeln.

epochToTimestamp() - Wandele Epoch in Timestamp in lokaler Zeit

Synopsis

    $timestamp = $class->epochToTimestamp($t);

Description

Wandele Epoch-Wert $t in einen Timestamp der lokalen Zeitzone um und liefere diesen zurück.

See Also

"timestampToEpoch"()

Array/Hash

stringToKeyVal() - Wandele Zeichenkette in Schüssel/Wert-Paare

Synopsis

    $arr|@arr = $class->stringToKeyVal($str);

Description

Liefere die in der Zeichenkette enthaltenen Schlüssel/Wert-Paare.

Die Schlüssel/Wert-Paare haben die Form:

    $key="$val"

Wenn $val kein Whitespace enthält, können die Anführungsstriche weggelassen werden:

    $key=$val

Example

    $class->stringToKeyVal(q|var1=val1 var2="val2"|);
    =>
    ('var1','val1','var2','val2a')

Caveats

Wenn $val mit einem doppelten Anführungsstrich beginnt, darf $val keine doppelten Anführungsstiche enthalten.

VERSION

1.130

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.