Diakritika

Ako sa da z nejakeho retazca odstranit diakritika? Potrebujem to na fulltextove vyhladavanie.
nevim, nakolik je to optimalni, ale ja s uspechem pouzivam toto:
(je to neco na zpusob prevodni tabulky)

function bez_diakritiky($text)
{
return strtr($text, "ěščřžýáíéĚŠČŘŽÝÁÍÉ","escrzyaieESCRZYAIE");
}

to se jenom priklad te funkce, ty retezce se paruji 1:1, ve skutecnosti tam mam ty retezce dlouhe asi 40 znaku (vsechna mozna diakritika, co me napadla, a da se napsat na bezne CZ nebo SK klavesnici)

(nechci se hadat, ze existuji urcite i lepsi a mozna univerzalnejsi zpusoby, tohle bylo to prvni, co me napadlo)
<HTML>function undiak($str)
{
$abc = "áäčďéěíĺľňóôőöŕšťúůűüýřžÁÄČĎÉĚÍĹĽŇÓÔŐÖŔŠŤÚŮŰÜÝŘŽ";
$abc2 = "aacdeeillnoooorstuuuuyrzAACDEEILLNOOOORSTUUUUYRZ";
$xabc = strlen($abc);

for($i = 0; $i < strlen($str); $i++)
for($j = 0; $j < $xabc; $j++)
if ($str[$i] == $abc[$j]) $str[$i] = $abc2[$j];

return $str;
}</HTML>