Codeschnipsel
Verwendung von UTF-8
1. Das Script
Das Script könnt ihr einfach weiter so benutzen wie bisher. Hier ist aber nun Entscheident, das ihr eine Funktion braucht, die euch klar Anzeigt, ob ein String UTF-8 kodiert ist, oder nicht. Folgende Funktion tut dies:
|
Desweiteren ist der Umgang mit HTMLENTITES und HTMLSPECIALCHARS nicht mehr so einfach wie vorher. Hier zu könnt ihr die Funktion in folgenden Formen aufrufen:
|
Auch greifen die Stringfunktionen von PHP nicht mehr fehlerfrei, da UTF-8 auf Unicode basiert, und somit ein Zeichen nicht nur ein Byte haben kann. Hierfür gibt es nun die MultiBytefunktionen aus der MB-Bibliothek. Desweiteren kommen Funktionen für UTF-8 kodierung und decodeierung hinzu. (utf8_decode & utf8_encode)
|
Diese Greifen aber nur bei ISO-8859-1 und UTF-8 . Für andere kodierungen zu UTF-8 sollte man die Funktion mb_convert_encoding benutzen.
|
Somit wäre das Script abgedeckt.
2. Die Homepage
Fehler entstehen meistens hier, wenn Daten übergeben werden. Diesen könnt ihr einfach vorbeugen wenn ihr:
Code | |
|
|
sendet. Damit wären hier Fehler bereits ausgeschlossen.
3. Die Datenbank
Hier liegt auch oft ein Fehler. UTF-8 wird erst von einer mySQL-Version erst ab 4.1+ fehlerfrei unterstützt. Hier solltet ihr für Verbindung, und Tabellen meist folgende Kodierung fehlen:
utf8_unicode_ci oder utf8_bin. Zudem, wie gesagt, sollte die Verbindung von PHP zu mySQL und zurück auf UTF-8 zurückgreifen. Solltet ihr euch da nicht sicher sein, wirkt ein einfaches SQL-Query
Code | |
|
So, das ist somit das wichtigste zu UTF-8 und dürfte euch weiter helfen.
Bei Fragen stehe ich soweit ich kann gerne zu verfügnung, möchte aber auch bitten, das ich nicht zu jeden Problem die Lösung weiß. Wenn hier die Tipps hier beachtet, dürfte es aber keine bis kaum Probleme geben.
Kommentare
Autor Teralios