phpbar.de logo

Mailinglisten-Archive

[php] wie kann man UTF-8 Zeichen erkennen

[php] wie kann man UTF-8 Zeichen erkennen

"Sebastian \"Marduk\" Pölsterl" marduk at k-d-w.org
Fre Sep 9 11:23:09 CEST 2005


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Norbert Pfeiffer schrieb:
> Hi,
> 
> wie kann man UTF-8 Text in einem "modernen" Editor erkennen ?
> Der hier liest alles problemlos ein und zeigt es einfach an.
> 
Mit PHP gibt's hilft dir folgende Funktion weiter:

function is_utf8($string) {

   // From http://w3.org/International/questions/qa-forms-utf-8.html
   return preg_match('%^(?:
         [\x09\x0A\x0D\x20-\x7E]            # ASCII
       | [\xC2-\xDF][\x80-\xBF]            # non-overlong 2-byte
       |  \xE0[\xA0-\xBF][\x80-\xBF]        # excluding overlongs
       | [\xE1-\xEC\xEE\xEF][\x80-\xBF]{2}  # straight 3-byte
       |  \xED[\x80-\x9F][\x80-\xBF]        # excluding surrogates
       |  \xF0[\x90-\xBF][\x80-\xBF]{2}    # planes 1-3
       | [\xF1-\xF3][\x80-\xBF]{3}          # planes 4-15
       |  \xF4[\x80-\x8F][\x80-\xBF]{2}    # plane 16
   )*$%xs', $string);

} // function is_utf8

> Und wie kann man ihn dann gegebenenfalls nach ANSI umwandeln ?
> Handworking ist nicht, bei knapp 15.000 Datensaetzen.
> 
Da würde ich mir mal die iconv Funktionen näher anschauen.

- --
Gruß,
Sebastian Pölsterl
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.5 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iD8DBQFDIVR81ygZeJ3lLIcRAiHXAKCTv//srorWs6eqp9VZhBwlUBgmiACgpvo8
MM0uIzb+cSCjDqLzYU/ROiA=
=v5s6
-----END PGP SIGNATURE-----

php::bar PHP Wiki   -   Listenarchive