Class MessageFormatter
Texte mit Argumenten formattieren
Die Formatterklasse formatiert einen vorgegebenen Text und ersetzt die übergebenen Platzhalter. Soll im Text der Marker verwendet werden, so kann dieser über einen Backslash escaped werden. Die Ergebnis-Zeichenkette enthät nach einer Typ-Umwandlung kein Escape-Zeichen mehr.
$text = "Wir kaufen {n} Autos"; $map = new Alvine\Types\Map(); $map['n'] = '5'; $f = new \Alvine\Text\Formatter($map); echo (string) $f->format($text); // Ausgabe: Wir kaufen 5 Autos $text = "Wir kaufen \{n\} Autos"; $map = new Alvine\Types\Map(); $map['n'] = '5'; $f = new \Alvine\Text\Formatter($map); echo (string) $f->format($text); // Ausgabe: Wir kaufen {n} Autos // Kein Escape mehr. // Escape längerer Marker $map = new Map(array('fahren'=>'ok','object'=>'Auto')); $m = new MessageFormatter($map); $m->setMarker('START', 'END'); echo $m->format('Wir \STARTfahren\END mit dem STARTobjectEND'); // Wir STARTfahrenEND mit dem Auto // Callbacks mit anonymen Methoden. $map = new \Alvine\Types\Map(); $m = new MessageFormatter($map); // Der Methodenname ist Case-Sesitive. $m->ondiph würde nicht aufgerufen. $m->onDiph = function($obj, $value) { return "Auto"; }; echo (string) $m->format('{Diph}haus.'); // Autohaus.
- Alvine\Core\Alvine implements Serializable uses Alvine\Core\SerializableImplementation
- Alvine\Text\Formatter
- Alvine\Text\MessageFormatter
- Alvine\I18N\MessageFormatter
Namespace: Alvine\I18n
Package: Alvine\I18n
Category: Framework
License: Licence
Author: schukai GmbH info@schukai.de
Version: Release: $Revision: 173 $
Since: 20130222
Link: Alvine
Located at i18n/MessageFormatter.class.php
Package: Alvine\I18n
Category: Framework
License: Licence
Author: schukai GmbH info@schukai.de
Version: Release: $Revision: 173 $
Since: 20130222
Link: Alvine
Located at i18n/MessageFormatter.class.php
public
|
|
public
string
|
#
format( Alvine\I18N\PropertyText $text,
Formatieren eines Textes |
buildMarkerAsHex(),
setMap(),
setMarker()
|
setLocale()
|
__call(),
__clone(),
__get(),
__set(),
__toString(),
equals(),
getClass(),
getClone(),
getClosure(),
getHashCode(),
getID(),
getShortID(),
isCallable(),
isInstanceOf(),
propertyExists()
|
serialize(),
unserialize()
|
checkAndAdjustSerialisation(),
serialize(),
unserialize()
|
ESCAPEDTOKEN_CLOSE,
ESCAPEDTOKEN_OPEN,
MARKER_CLOSE,
MARKER_OPEN,
MAXIMUM_RECURSIVE_LEVEL
|
APIVERSION,
IDENTIFICATION,
SERIALVERSION,
VERSION
|
protected
|
$pluralRules
Mehrzahlregel |
#
null
|
$end,
$endPattern,
$map,
$start,
$startPattern
|
$locale
|
$hash,
$properties
|