PHP - cestina v RE
Michal Chocholac
mch na vosis.cz
Středa Únor 6 12:06:18 CET 2002
Jenom doplním, že při správně nastavených (systémových) locales třída
znaků [:alpha:] funguje. Ovšem eregi() pořád ne (viz. priklad)...
<example>
<?php
SetLocale("LC_ALL","Czech");
$str = 'Michal Chocholáč Ďťěščřžýáíé';
$patts[] = "láč";
$patts[] = "Láč";
$patts[] = "lÁč";
$count_patts = count($patts);
if (ereg("[[:alpha:][:space:]]*", $str)) {
echo "retezec \"$str\" ok!<BR>";
}
for ($i=0; $i<$count_patts; $i++) {
if (eregi($patts[$i], $str)) {
echo "nasel jsem retezec \"$patts[$i]\"!<BR>";
}
else echo "NENASEL jsem retezec \"$patts[$i]\"!<BR>";
}
?>
</example>
Zdraví
--mch
Michal Chocholáč
mch na vosis.cz
> interpretovalo české znaky. Tedy zejména mi jde o to, aby třída znaků
> [:alpha:] zahrnovala ě,Ě,š,Š,... a taky aby funkce eregi() apod.
> respektovaly velikost českých znaků ěĚ,šŠ,...
>
> Bohužel už nevím kde jsem četl, že php respektuje podle LC_CTYPE. Ovšem
> jeho nastavení v /etc/sysconfig/i18n nepomohlo a nepomohlo ani nasazení
> funkce setlocale(LC_CTYPE, 'cs_CZ')...
>
> Používám RH 7.1 CZ s (tuším původním) php-4.0.4pl1-9.
Další informace o konferenci Linux