iconv

(PHP 4 >= 4.0.5, PHP 5, PHP 7)

iconvKonvertiert Zeichenketten in einen anderen Zeichensatz

Beschreibung

iconv ( string $in_charset , string $out_charset , string $str ) : string

Die Funktion konvertiert die in Zeichensatz in_charset kodierte Zeichenkette str in eine Zeichenkette mit Kodierung out_charset.

Parameter-Liste

in_charset

Der Eingabe-Zeichensatz.

out_charset

Der Ausgabe-Zeichensatz.

Wenn Sie die Zeichenkette //TRANSLIT an out_charset anhängen, wird die Transliteration aktiviert. Das bedeutet, dass ein Zeichen, das im Zielzeichensatz nicht dargestellt werden kann mit einem oder mehreren ähnlich aussehenden Zeichen annähernd dargestellt werden kann. Wenn Sie die Zeichenkette //IGNORE anhängen, werden diese nicht darstellbaren Zeichen ohne Warnung verworfen. Ansonsten wird eine E_NOTICE erzeugt und die Funktion gibt FALSE zurück.

Achtung

Ob und wie //TRANSLIT genau funktioniert hängt von der iconv() Implementierung des Systems ab (vgl. ICONV_IMPL). Einige Implementierungen sind bekannt dafür, //TRANSLIT zu ignorieren, so dass die Umwandlung für Zeichen, die illegal für den out_charset sind, vermutlich fehlschlägt.

str

Die zu konvertierende Zeichenkette.

Rückgabewerte

Gibt die konvertierte Zeichenkette zurück. Im Fehlerfall wird FALSE zurückgegeben.

Changelog

Version Beschreibung
5.4.0 Seit dieser Version gibt die Funktion FALSE bei nicht erlaubten Zeichen zurück, außer wenn //IGNORE im Ausgabe-Zeichensatz angegeben wurde. Vorher wurde eine partielle Ausgabezeichenkette zurück gegeben.

Beispiele

Beispiel #1 iconv()-Beispiel:

<?php
$text 
"This is the Euro symbol '€'.";

echo 
'Original : '$textPHP_EOL;
echo 
'TRANSLIT : 'iconv("UTF-8""ISO-8859-1//TRANSLIT"$text), PHP_EOL;
echo 
'IGNORE   : 'iconv("UTF-8""ISO-8859-1//IGNORE"$text), PHP_EOL;
echo 
'Plain    : 'iconv("UTF-8""ISO-8859-1"$text), PHP_EOL;

?>

Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:

Original : This is the Euro symbol '€'.
TRANSLIT : This is the Euro symbol 'EUR'.
IGNORE   : This is the Euro symbol ''.
Plain    :
Notice: iconv(): Detected an illegal character in input string in .\iconv-example.php on line 7