Hallo,
ich weiß mein Titel ist etwas eigenartig aber mir ist keine bessere Beschreibung eingefallen. Nun zu meinem Problem:
Ich lese eine Internetseite im Zeichensatz ISO-8859-1 in eine Variable ein.
Aus diesem String erzeuge ich ein Array.
In diesem Array suche ich nach bestimmten Zeilen, die durch andere ersetz werden.
[PHP]
// Beispiel:
// Original Array (ISO-8859-1)
$original = array (
„1“ = „Ich“,
„2“ = „habe“,
„3“ = „ein“,
„4“ = „Problem“,
„5“ = „mit“,
„6“ = „Umlauten“,
„7“ = „wie“,
„8“ = „ä“,
„9“ = „ü“,
„10“ = „ö“,
„11“ = „und ähnlichen“,
„12“ = „Zeichen“,
);
// Ersetzen Array (UTF-8)
$ersetzen = array (
„und ähnlichen“ = „und anderen“,
„ein“ = „kein“,
);
// Suche im Original Array nach Vorkommen im Ersetzen Array
foreach ($original as $num => $original){
foreach ($ersetzen as $old => $new){
if ($original[$num] == $old) {
$original[$num] = $new;
}
}
}
[/PHP]
Die Ausgabe sollte ja jetzt so aussehen:
[HTML]
…
„3“ = „kein“,
…
„11“ = „und anderen“,
…
[/HTML]
Jedoch sieht das ganze so aus:
[HTML]
…
„3“ = „kein“,
…
„11“ = „und ähnlichen“,
…
[/HTML]
Ich Glaube das ganze kommt durch die unterschiedlichen Kodierung der Seiten
Original Webseite: ISO-8859-1
PHP Datei: UTF-8
Ausgabe Webseite: UTF-8
Wie bekomme ich den String der Originalwebseite in ein UTF-8 Format, damit die Umlaute auch in der if-Abfrage richtig erkannt werden?
Ich danke euch fürs lesen
Silvo