waYan
23.04.2008, 19:51:45
Hallo,
ich möchte aus einem UTF8-String die Sonderzeichen entfernen:
$str = 'abc äöü%§"&ßÄÖÜ abc';
echo 'Original: '. $str.'<BR>';
$str = preg_replace('/[^\w]/u', ' ', $str);
echo 'Ohne Sonderzeichen: '. $str;
Ausgabe unter Windows (XP):
Original: abc äöü%§"&ßÄÖÜ abc
Ohne Sonderzeichen: abc äöü ßÄÖÜ abc
Also alles richtig :-)
Ausgabe unter Linux (CentOs, Fedora):
Original: abc äöü%§"&ßÄÖÜ abc
Ohne Sonderzeichen: abc abc
Hier werden die Umlaute als Sonderzeichen interpretiert und entfernt :-(
Irgendwie schein der Modifier "/u" (switch for Unicode) unter Linux nicht zu funktionieren. Das kann doch nur eine Einstellung im Betriebssystem sein oder? Kennt sich damit jemand aus?
Vielen Dank.
greeTz
waYan
ich möchte aus einem UTF8-String die Sonderzeichen entfernen:
$str = 'abc äöü%§"&ßÄÖÜ abc';
echo 'Original: '. $str.'<BR>';
$str = preg_replace('/[^\w]/u', ' ', $str);
echo 'Ohne Sonderzeichen: '. $str;
Ausgabe unter Windows (XP):
Original: abc äöü%§"&ßÄÖÜ abc
Ohne Sonderzeichen: abc äöü ßÄÖÜ abc
Also alles richtig :-)
Ausgabe unter Linux (CentOs, Fedora):
Original: abc äöü%§"&ßÄÖÜ abc
Ohne Sonderzeichen: abc abc
Hier werden die Umlaute als Sonderzeichen interpretiert und entfernt :-(
Irgendwie schein der Modifier "/u" (switch for Unicode) unter Linux nicht zu funktionieren. Das kann doch nur eine Einstellung im Betriebssystem sein oder? Kennt sich damit jemand aus?
Vielen Dank.
greeTz
waYan