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".

camelCaseToSnakeCase() - Wandele CamelCase nach SnakeCase

Synopsis

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

Arguments

$camel

Bezeichner in CamelCase

Returns

Bezeichner in SnakeCase

Description

Wandele einen in CamelCase geschriebenen Bezeichner in einen SnakeCase Bezeichner und liefere diesen zurück.

CamelCase:

imsApplyDeltaRowByRow

SnakeCase:

ims-apply-delta-row-by-row

snakeCaseToCamelCase() - Wandele SnakeCase nach CamelCase

Synopsis

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

Description

Wandele einen in SnakeCase geschriebenen Bezeichner in einen CamelCase Bezeichner und liefere diesen zurück.

SnakeCase:

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

CamelCase:

imsApplyDeltaRowByRow

protectRegexChars() - Maskiere Regex-Metazeichen in Zeichenkette

Synopsis

$strProtexted = $this->protectRegexChars($str);

Arguments

$str

Zeichenkette, in der die Zeichen maskiert werden sollen

Returns

(String) Zeichenkette, in der die Regex-Metazeichen maskiert sind.

Description

Maskiere in Zeichenkete $str alle Regex-Metazeichen und liefere das Resultat zurück. Maskiert werden die Zeichen

. + * ? | ( ) { } [ ] \ ^ $

Im Gegensatz zur Perl Buildinfunktion quotemeta() bzw. "\Q..." maskiert diese Methode keine anderen Zeichen als Regex-Metazeichen.

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

germanNumber() - Wandele deutsche Zahldarstellung in Zahl

Synopsis

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

Alias

germanToProgramNumber()

Description

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

germanMoneyAmount() - Wandele deutschen Geldbetrag in Zahl

Synopsis

$x = $this->germanMoneyAmount($germanMoneyAmount);

Description

Wandele deutschen Geldbetrag mit Punkt (.) als Stellen-Trenner und Komma (,) als Dezimaltrennzeichen in eine Zahl mit zwei Nachkommastellen 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"

oder

$key='$val'

oder

$key={$val}

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

$key=$val

Caveats

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

Example

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

VERSION

1.222

AUTHOR

Frank Seitz, http://fseitz.de/

COPYRIGHT

Copyright (C) 2024 Frank Seitz

LICENSE

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