Christian: Ersetzen von Nicht-ASCII-Zeichen durch Alternativen

Hallo zusammen,

wieder stecke ich in der Sackgasse.

Ich muss beliebige Zeichenketten URL-konform gestalten, also Leerzeichen, Sonderzeichen, diverse Satzzeichen usw. entfernen bzw. ersetzen. Gleiches gilt natürlich auch für unsere deutschen Umlaute. Bis hierher ist dies auch kein Problem. Nur sind wir Deutschen leider nicht das einzige Volk, das Umlaute und/oder Betonungszeichen verwendet. Slawische Sprachen, wie Polnisch oder Tschechisch, basieren auf weiteren Buchstaben. Nun müssen aber auch diese Zeichen, wie beispielsweise die polnischen Zeichen "ł" oder "ą" durch entsprechende ASCII-Zeichen ("l" oder "a") ersetzt werden.

Kennt jemand hierfür ein Modul / eine Klasse für PHP, mittels derer ich solche Ersetzungen automatisch vornehmen kann? Oder bleibt mir nichts, außer selbst eine Übersetzungstabelle anzulegen?

Info - Die zu ersetzenden Zeichenketten sind UTF-8 kodiert.

Vielen Dank vorab für Eure Unterstützung.

Beste Grüße,
Markus

  1. Lieber Christian,

    [ ] Du kennst urlencode()

    Liebe Grüße aus Ellwangen,

    Felix Riesterer.

    --
    ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)
    1. Hallo Felix,

      herzlichen Dank für die schnelle Unterstützung. Die Funktion urlencode() ist mir sicherlich bekannt, allerdings nicht das wonach ich suche.

      Das Ergebnis der Kodierung der von mir examplarisch vorgestellten polnischen Zeichen "ł" und "ą" ist "%C5%82" und "%C4%85". Dies ist zwar URL-konform, allerdings sehr unpraktisch. Die resultierenden URLs sollten "lesbar" sein, sowohl für Benutzer, als auch für Suchmaschinen (bzw. für solche optimiert, damit eine Indizierung in der Form www.example.com/path erfolgen kann - www.example.com/p%C4%85th ist also nicht das Ziel).

      Dennoch vielen Dank!

      Beste Grüße,
      Markus

      1. Beste Grüße,
        Markus

        Markus -> Arbeitskollege ;-)

        Beste Grüße,
        Christian

      2. (Hallo|Hi(ho)|Tag) Christian,

        Das Ergebnis der Kodierung der von mir examplarisch vorgestellten polnischen Zeichen "ł" und "ą" ist "%C5%82" und "%C4%85". Dies ist zwar URL-konform, allerdings sehr unpraktisch. Die resultierenden URLs sollten "lesbar" sein, sowohl für Benutzer, als auch für Suchmaschinen (bzw. für solche optimiert, damit eine Indizierung in der Form www.example.com/path erfolgen kann - www.example.com/p%C4%85th ist also nicht das Ziel).

        Suchmaschinen dürften damit kein Problem haben. Menschliche Leser
        dagegen stolpern gerne über die automatisierte URL-Umlaute-Umschreibung
        ...

        Das Zauberwort dürfte Transkription (neudeutsch: "transcription") heißen. Allerdings wird das gerne mit Transliteration
        durcheinandergewürfelt. Bei letzterem Suchwort spuckte Google allerdings
        was (vielleicht) Brauchbares aus:

        http://expressionengine.com/forums/viewthread/43527/

        MffG
        EisFuX