phpbar.de logo

Mailinglisten-Archive

[php] [OT] Website auf UTF umstellen

[php] [OT] Website auf UTF umstellen

Andi Voss andi at andis.mine.nu
Die Aug 2 13:11:26 CEST 2005


Ralf Eggert schrieb:
> Hallo Liste,
> 
> sorry für das OT. Ich bin gerade dabei, eine Website von "iso-8859-1"
> auf "utf-8" umzustellen, stehe aber erst am Anfang. Nach meinem
> Empfinden muss ich bei der Umstellung folgendes beachten:
> 
> - alle HTML Templates umstellen (die einfachste Übung)
> - die Datenbankinhalte konvertieren (schon etwas schwieriger, aber das
>   Thema hatte ich hier in der Liste schon mal angesprochen [1])
> 
> Ich überlege nun, ob das schon alles ist oder ob ich noch etwas
> vergessen habe. An meinen PHP Skripten muss ich ja im Prinzip nichts
> ändern. Oder gibt es noch andere Punkte, die ich beachten sollte?
> 
> Wäre für Tipps und Links dankbar. Vielleicht hat ja auch der ein oder
> andere einen Tipp parat, der so etwas schon mal gemacht hat.

Hi Ralf,

deine HTML-Templates alle in UTF-8 speichern wie du schon gesagt hast - 
welchen Editor benutzt du?
Und natürlich auch deine PHP-Skripte.
Dann solltest du in Formularen accept-charset="utf-8" hinzufügen.

Die mb_string Funktionen sind dann wunderbare Werkzeuge.

mb_internal_encoding("utf-8");	
mb_http_output("utf-8");
mb_http_input("utf-8");
ob_start("mb_output_handler");

Alle weiteren Einstellungen auf:
http://de2.php.net/manual/de/ref.mbstring.php

Ansonsten solltest du die richtigen Header setzen header(...).
Benutzt du XHTML + utf-8 oder nur "normales" HTML mit utf-8 ?
Der Header dafür ist dann entsprechend entscheidend:
Z.B.
Content-Type: application/xhtml+xml;charset=utf-8
wenn du echtes XHTML ausliefern möchtest. Oder
Content-Type: text/html;charset=utf-8
wenn du "normales" HTML auslieferst in utf-8

Mit mb_convert_encoding( $string, TOCHARSET, FROMCHARSET );
kannst du deine DB-Inhalte konvertieren.
Vorsicht beim suchen in der DB mit Umlauten und Sonderzeichen. Die 
müssen dann natürlich vorher auch erst wieder in den charset der DB 
konvertiert werden, sonst gibts keine Suchergebnisse.

Das sind so mal die gröbsten Sachen dies zu beachten gibt. Wenns noch 
Fragen gibt, dann kannste auch PM schicken.

Gruss Andi

php::bar PHP Wiki   -   Listenarchive