Yuuri
Fleet Admiral
- Registriert
- Okt. 2010
- Beiträge
- 13.928
Ich nutze die ganzen mb_* Funktionen persönlich gar nicht. Wenn wirklich alles in UTF-8 gespeichert und transportiert wird, hast du auch mit asiatischen oder exostischen Zeichen (ฬᣫ⧭⌨ᚏഈ㒀㐤䓲⣑⢟Ϡ☯❿❖ଇ) keinerlei Probleme und musst nichts konvertieren oder sonstigen Hickhack anwenden.carom schrieb:Liege ich falsch, oder ist die Multibytestring-Erweiterung pflicht?
Die Frage dabei ist natürlich immer, wie und wo man etwas verwendet. Ich persönlich weiß gar nicht mehr, wann ich das letzte Mal strlen irgendwo benutzt habe. Wenn kommen Sachen so in die DB, wie sie ankommen und auch so raus. Um die Begrenzungen kümmert sich der Browser (<input size="">), sowie die DB selbst. Wenn der User die Beschränkung im HTML selbst entfernt, hat er eben das Problem an der Backe und die DB schneidet alles überflüssige dann halt weg. Das Escaping ist durch Prepared Statements gesichert. strlen im Code ist ja so weit wie möglich eh auf ASCII begrenzt, von daher kann es dort nicht zu Problemen kommen. Aber da sollte man sowieso auf Konstanten und (in PHP nicht vorhandene) Enumerations ausweichen und nicht irgendwelche beliebigen Strings übergeben.
Die Aussage bezieht sich hier nur aufs Encoding-Problem, da wie du ja selbst siehst, die beiden Zeichen zu keinem ö werden, trotz der Funktionen. Aber wie gesagt: Solche Probleme sind bei mir noch nie aufgetreten (außer bei UTF-8 Umstellungen), ergo kümmer ich mich erst dann darum, wenn so ein Fall wirklich auftritt.
edit: Und bumms, war das Forum zu blöd für utf8 und hat alles abgeschnitten... -.-