• Das kreative Thema des Monats Oktober wird vor allem diejenigen unter Euch besonders ansprechen, denen Do-it-yourself quasi im Blut liegt. Zeigt uns Eure Improvisationskünste oder fotografiert, was andere Leute sich so im Alltag zusammengestrickt haben. --> Zum Mitmachen bitte hier klicken

[PHP] Zwei UTF-8-Strings (Composed und Decomposed) vergleichen

Tekl

Fairs Vortrefflicher
Registriert
01.06.05
Beiträge
4.630
Hi,

am Mac gibt's ja leider das Problem, das UTF-8-Dateinamen z.B. Umlaute 'decomposed' ablegen, also quasi als o und zusätzlich die Punkte. In URLs und Formularen wird UTF-8 aber 'composed' abgelegt, womit es nun Probleme gibt. Ich habe nun das Problem dass ich zwei Strings vergleichen muss wo einmal composed UTF-8 und decomposed UTF-8 vorliegt. Kennt jemand einen Trick?

urlencode liefert leider auch zwei unterschiedliche Ergebnisse.
 
Decomposed auslesen, Umlaute ersetzen, dann vergleichen ?
 
Ich weiß leider vorher nicht welche Zeichen alles so verwendet werden, könnten auch osteuropärische Namen vorkommen. Ich habe es auch schon mit mb_convert_encoding in ASCII versucht, doch auch dann sind die Strings unterschiedlich.
 
In PHPBB habe ich nun die Klasse utf_normalizer gefunden. Daraus konnte ich mir was basteln, was für meinen konkreten Fall funktioniert.