PHP prakticky/Odstranění diakritiky: Porovnání verzí

Smazaný obsah Přidaný obsah
Oprava příliš žluťoučkého koně (ten kůň úpěl)
m Doplněno zvýraz.syntaxe
Řádek 2:
 
Při konverzi funkcí iconv() se použije nastavení transliterace (TRANSLIT). Je to jednoduché, ale má to svá úskalí. Výsledek takového převodu závisí na nastavení systému (locale) a transliterace může taky proběhnout tak, že čárky jsou nahrazeny znakem ', na to je třeba pamatovat u textů, které tyto znaky mohou obsahovat.
<syntaxhighlight lang="php">
<pre>
$text = "příliš žluťoučký kůň úpěl ďábelské ódy";
 
Řádek 8:
 
echo iconv("utf-8", "us-ascii//TRANSLIT", $text);
</syntaxhighlight>
</pre>
 
Méně nejisté řešení je použití funkce strtr(). Pro jednobajtové kódování stačí kratší zápis, pro vícebajtové je třeba převodní pole.
 
<syntaxhighlight lang="php">
<pre>
// pro single-byte
$text = strtr($text, 'áäčďéěëíµňôóöŕřšťúůüýžÁÄČĎÉĚËÍĄŇÓÖÔŘŔŠŤÚŮÜÝŽ', 'aacdeeeilnooorrstuuuyzaacdeeelinooorrstuuuyz');
Řádek 105:
 
$text = strtr($text, $prevodni_tabulka);
</syntaxhighlight>
</pre>
[[Kategorie:PHP prakticky|Odstranění diakritiky]]