phpbar.de logo

Mailinglisten-Archive

[php] ctype mit locale de_DE.UTF8

[php] ctype mit locale de_DE.UTF8

Jakob Buchgraber jakob.buchgraber at googlemail.com
Mit Feb 21 12:50:18 CET 2007


Dejan Spasic wrote:
> Hallo Liste :)
>
> Ich beschäftige mich gerade mit den ctype[0] Funktionen. Genauer
> genommen mit ctype_alpha. Drauf gestoßen bin ich als ich mir die
> Zend_Validate_XXX[1] angeschaut habe. 
>
> Nun ist mir aber folgendes unklar:
>
> Ist die locale Einstellung, mittels setlocale[2], de_DE.UTF8 und der
> Content-Type des HTML-Dokuments auf UTF-8 eingestellt, schlägt die
> Validierung bei den Wert "SchöneGrüße" mit ctype_alpha fehl. Sind die
> Einstellungen aber auf de_DE.ISO88591 bzw. ISO-8859-1 gesetzt, ist die
> Validierung erfolgreich. Warum ist die Validierung mit UTF-8 nicht
> erfolgreich?
>
> Das Ganze ist auch Online unter
> http://coding.d-down.de/test/string/validate_with_ctype.php bzw.
> http://coding.d-down.de/test/string/validate_with_ctype.phps erreichbar.
>
> [0] http://de.php.net/ctype
> [1]
> http://framework.zend.com/fisheye/browse/Zend_Framework/trunk/library/Zend/Validate
> [2] http://de.php.net/setlocale
>
> Gruß Dejan
>
>   
Weil die PHP Funktionen vor Version 6 nicht mit Unicode (Multibyte 
Strings) umgehen können. Du kannst ja mal bei snaps.php.net den CVS 
Snapshot von PHP6 runterladen und schaun ob die ctype Funktionen schon 
auf Unicode portiert worden sind. Es gibt auch eine PHP Erweiterung 
namens mb_string, die Multibyte Strings unterstützt (php.net/mb_string)

Mehr zu UTF8 und Unicode findest du bei Wikipedia
http://de.wikipedia.org/wiki/UTF8
http://de.wikipedia.org/wiki/Unicode

Cheers,
Jay

-- 
My system configuration (Gentoo Linux): http://www.linux-stats.org/index.php?c=userpage&sys=810
Registered Linux User #373457


php::bar PHP Wiki   -   Listenarchive