Autor Zpráva
Vita
Profil *
Ahoj nema nekdo sikovnou funkci pro odstraneni diakritiky v retezci? Treba pomoci regularnich vyrazu. Diky za kod moc by se mi hodil ;-)
krteczek
Profil

function vrat_seonazov_temy($uri, $maxlength = false, $separator = "-")
{
//táto funkcia v parametry uri prijímá text, ktorý prevedie na malé písmená,
//odstrání z textu medzery, nahradí medzery pomlčkamy(defaultne),
//dlľka textu nie je obmedzená(defaultne)
$uri = strtolower(trim($uri));
$hemzy = Array("á" => "a", "ä" => "a", "ă" => "a", "č" => "c", "ç" => "c", "ď" => "d", "đ" => "d",
"é" => "e", "ë" => "e", "ě" => "e", "ę" => "e", "i" => "i", "í" => "i", "ĺ" => "l",
"µ" => "l", "ł" => "l", "ň" => "n", "ó" => "o", "ö" => "o", "ř" => "r",
"ą" => "s", "»" => "t", "ú" => "u", "ů" => "u", "Ů" => "u", "Ú" => "u","Ü" => "u", "ü" => "u", "ý" => "y", "ľ" => "z",
"Á" => "a", "Ä" => "a", "Â" => "a", "Ă" => "a", "Ä" => "a", "Č" => "c", "Ď" => "d", "É" => "e", "Ě" => "e",
"Ë" => "e", "Î" => "i", "Í" => "i", "Ł" => "l", "ˇ" => "a", "¦" => "s",
"«" => "t", "®" => "z", "Ş" => "s", "Ż" => "z", "±" => "a", "ş" => "s",
"Ą" => "l", "µ" => "l", "ż" => "z", "Ŕ" => "r", "Ĺ" => "l", "Ć" => "c", "Ç" => "c",
"Č" => "c", "Ę" => "e", "Ë" => "e", "Í" => "i", "Ě" => "e", "Ď" => "d", "Đ" => "d",
"Ń" => "n", "Ň" => "n", "Ó" => "o", "Ô" => "o", "Ö" => "o", "Ř" => "r", "ń" => "n","&" =>"-", "&" => "-",
"ő" => "o", "ű" => "u", "ţ" => "t", "ý" => "y",":" => "-", '.' =>"-", ',' => "-",
"'" => "-", '"' => "-", "!" => "-", '\\' => "");
$uri = strtr($uri, $hemzy);//nahradí znaky podµa pola $hemzy
$uri = preg_replace("/(\.)|(\.){1,}|(\|)|(\|){1,}|(\+){1,}|(\%){1,}|(\*){1,}| (\?)|(\?){1,}/", "", $uri);
$uri = preg_replace("/(.*)\-$/", "\\1",$uri);//odstráni pomlčku na konci retazca
//$uri=trim($uri);//odstrané nadbytočné medzery
$casti=explode(" ",$uri);//hodí obsah $uri do pola $casti, oddelovník sú medzery
$uri = implode($separator, $casti);//spojí pole $casti zpä» do stringu, spojovník je $separator
$uri=preg_replace("/(-){2,}/","-",$uri);//odstraní prebytočné pomlčky
$uri = preg_replace("/^(-)(.*)$/","\\2", $uri);//odstrané pomlčky na začiatku retazca
if ($maxlength !== false && is_int($maxlength) && $maxlength < strlen($uri))
{
$uri = substr($uri, 0, $maxlength);
$uri = substr($uri, 0, strrpos($uri, $separator));
}
return $uri;
}
t.h.
Profil *
$text=Strtr($text,"áÁéÉíÍóÓúÚůŮýÝěĚą©čČřŘľ®»«ďĎňŇ","aAeEiIoOuUuUyYeEsS cCrRzZtTdDnN");

kde promenna text je text kde bude diakritika odstranena, dalsi dva parametry jsou co chces za co vymenit
souki
Profil
t.h.
nefunguje na UTF-8
Vita
Profil *
Diky za rady. Jeste jsem nasel tohle
[url=http://php.vrana.cz/vytvoreni-pratelskeho-url.php]
http://php.vrana.cz/vytvoreni-pratelskeho-url.php[/url] to vypada taky dobre ;-)
Toto téma je uzamčeno. Odpověď nelze zaslat.

0