Encoding¶
Mit der Encoding
-Klasse ist es möglich Zeichenketten von einem
Encoding in ein anderes umzuwandeln. Als PHP-Funktion kommt mb_convert_encoding
zum Einsatz.
Bei der ersten Verwendung dieser Klasse, muss eine Instanz erstellt werden. Dies
kann über die Methode Encoding::getInstance()
erfolgen. Dies sorgt dafür, dass
die entsprechenden \mb_string
Einstellungen korekt gesetzt werden.
Die Methode Encoding::encode()
Wandelt eine Zeichenkette in das gewünschte
Zielencoding um und gibt diese Zeichenkette zurück.
$encoding=\Alvine\I18n\Encoding::getInstance();
echo $encoding->encode('Iñtërnâtiônàlizætiøn', \Alvine\I18n\Encoding::BASE64);
// ⇢ ScOxdMOrcm7DonRpw7Ruw6BsaXrDpnRpw7hu
echo $encoding->encode('Iñtërnâtiônàlizætiøn', \Alvine\I18n\Encoding::HTML_ENTITIES);
// ⇢ Iñtërnâtiônàlizætiøn
echo $encoding->encode('Iñtërnâtiônàlizætiøn', \Alvine\I18n\Encoding::CP1252);
// ⇢ I�t�rn�ti�n�liz�ti�n
Wird kein gültiges Encoding übergeben, so wird
eine \Alvine\I18n\EncodingException
geworfen.
try {
echo $encoding->encode('Iñtërnâtiônàlizætiøn', 'unsupported!');
} catch(\Alvine\I18n\EncodingException $e) {
echo $e->getMessage();
}