Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
[PHP] Der Huddel mit den Zeichensätzen
#1
Der Huddel mit den Zeichensätzen ist nicht immer einfach zu bewerkstelligen.

Ein Datenbankeintrag in meiner lokalen Umgebung sieht wie folgt aus:

Zitat:I'm

Auf meinem Webspace sieht er aber so aus:

Zitat:I�m

Nach meiner bisherigen Recherche ist hier eine Vermischung von einem ISO-8859-1-Zeichen in einer UTF-8-Umgebung für die Darstellung verantwortlich.

Folgende Erklärung habe ich hier gefunden:


Zitat:Ein Beispiel für das Wort _Höhe_:

UTF-8-Text in ISO-8859-1/9/13-16-Umgebung

_Höhe_ → _Höhe_.

ISO-8859-1-Text in UTF-8-Umgebung

_Höhe_ → _H_�_he_ bzw. Fehlermeldung mit Abbruch. Ein Byte mit dem Hexadezimalwert _F6_ ist in UTF-8 nicht zulässig. Es ist üblich, für nicht konvertierbare Zeichen das [url=https://de.wikipedia.org/wiki/Ersetzungszeichen "Ersetzungszeichen"]Ersetzungszeiche[/url]n (U+FFFD) einzufügen.

Eine Lösung habe ich insofern gefunden, als das oftmals ein Zeichensatz falsch deklariert wird. Bedeutet, es gibt Verwechslungen zwischen windows-1252 und ISO-8859-1.

Die Lösung meines Problems war folgende Zeile im PHP-Script:

PHP-Code:
<?php
    
//$mailtext_neu = mb_convert_encoding($mailtext_neu, "UTF-8", "windows-1252");
    $mailtext_neu iconv('windows-1252''UTF-8'$mailtext_neu);
?>

Beide Varianten funktionieren und konvertieren den scheinbar nicht in UTF-8 vorliegenden Text korrekt um.

Gefunden habe ich die Lösung hier:

PHP: Problems converting "’" character from ISO-8859-1 to UTF-8
Zitieren Return to top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste