Portál AbcLinuxu, 8. června 2024 16:11


Dotaz: PHP odstránenie diakritiky

15.6.2011 12:14 adrinko | skóre: 22
PHP odstránenie diakritiky
Přečteno: 3124×
Odpovědět | Admin
ahojte, mám taký zaujímavý dotaz. Akým spôsobom sa dá odstrániť diakritika zo stringu? napr. string="ščžýíéôúä" by mal vrátiť "sczyieoua"

tiež by som potreboval vyriešiť napr nemeckú gramatiku v zmysle, aby ß bolo ss, ö=oe, ü=ue, atď. vďaka za poradenie

Řešení dotazu:


Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

15.6.2011 12:38 Zdenek
Rozbalit Rozbalit vše Re: PHP odstránenie diakritiky
Odpovědět | | Sbalit | Link | Blokovat | Admin
Klicove slova: iconv,translit
15.6.2011 12:40 Kit
Rozbalit Rozbalit vše Re: PHP odstránenie diakritiky
Odpovědět | | Sbalit | Link | Blokovat | Admin
Zkus tohle:
$string="Příšerně žluťoučký kůň úpěl ďábelské ódy. Das ist süß.";
echo iconv("UTF-8", "ASCII//TRANSLIT", $string);
výsledek: "Priserne zlutoucky kun upel dabelske ody. Das ist suss."

Takže s tou německou gramatikou to je asi trošku složitější.
moo avatar 15.6.2011 14:40 moo | skóre: 7 | Praha
Rozbalit Rozbalit vše Re: PHP odstránenie diakritiky
takze doplnit o carovnu str_replace()
End the FED!
16.6.2011 00:05 adrinko | skóre: 22
Rozbalit Rozbalit vše Re: PHP odstránenie diakritiky
vďaka vám všetkým, idem sa s tým popasovať
17.6.2011 00:22 Sten
Rozbalit Rozbalit vše Re: PHP odstránenie diakritiky
S německou gramatikou je to složitější, protože některé jazyky ü při odstranění diakritiky zapisují jako u (maďarština) a některé jako ue (němčina) a iconv ten přepis provádí podle aktuálních locales.
16.6.2011 21:12 chrono
Rozbalit Rozbalit vše Re: PHP odstránenie diakritiky
Odpovědět | | Sbalit | Link | Blokovat | Admin
ASCII//TRANSLIT funguje pre rôzne lokalizácie rôzne. Napr. pri de_DE by z toho ü bolo ue.
16.6.2011 23:28 adrinko | skóre: 22
Rozbalit Rozbalit vše Re: PHP odstránenie diakritiky
overené a funguje. uvázam príklad:
setlocale(LC_ALL, 'de_DE.UTF8'); 
$string="Příšerně žluťoučký kůň úpěl ďábelské ódy ä. Das ist süß. ö ü ß";
echo iconv("UTF-8", "ASCII//TRANSLIT", $string);

setlocale(LC_ALL, 'sk_SK.UTF8'); 
$string="Příšerně žluťoučký kůň úpěl ďábelské ódy ä. Das ist süß.";
echo iconv("UTF-8", "ASCII//TRANSLIT", $string);

//madarsky
$string="Kormányzati Portál. Hírek, információk, jogtár, cég- és ingatlankereső, online.";
echo iconv("UTF-8", "ASCII//TRANSLIT", $string);

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.