jesteś w: Główna > PHP > str_to_url(): usuń akcenty
Ostatnia aktualizacja tej strony: 2022-03-28, 21:03:31
funkcja str_to_url()
string
str_to_url
(string [, change_case]);If change_case
is -1 string is converted to lowercase, if change_case
is 1 string is converted to uppercase. Default is 0 - leave untouched.
This code may be damaged due to automatic [tab] to [double-space] conversion. Please see str_to_url in .txt file.
<?php
function str_to_url($s, $case=0){
$acc = 'É Ê Ë š Ì Í ƒ œ µ Î Ï ž Ð Ÿ Ñ Ò Ó Ô Š £ Õ Ö Œ ¥ Ø Ž § À Ù Á Ú Â Û Ã Ü Ä Ý ';
$str = 'E E E s I I f o m I I z D Y N O O O S L O O O Y O Z S A U A U A U A U A Y ';
$acc.= 'Å Æ ß Ç à È á â û Ĕ ĭ ņ ş Ÿ ã ü ĕ Į Ň Š Ź ä ý Ė į ň š ź å þ ė İ ʼn Ţ Ż æ ÿ ';
$str.= 'A A S C a E a a u E i n s Y a u e I N S Z a y E i n s z a p e I n T Z a y ';
$acc.= 'Ę ı Ŋ ţ ż ç Ā ę IJ ŋ Ť Ž è ā Ě ij Ō ť ž é Ă ě Ĵ ō Ŧ ſ ê ă Ĝ ĵ Ŏ ŧ ë Ą ĝ Ķ ŏ ';
$str.= 'E l n t z c A e I n T Z e a E i O t z e A e J o T i e a G j O t e A g K o ';
$acc.= 'Ũ ì ą Ğ ķ Ő ũ í Ć ğ ĸ ő Ū î ć Ġ Ĺ Œ ū ï Ĉ ġ ĺ œ Ŭ ð ĉ Ģ Ļ Ŕ ŭ ñ Ċ ģ ļ ŕ Ů ';
$str.= 'U i a G k O u i C g k o U i c G L O u i C g l o U o c G L R u n C g l r U ';
$acc.= 'ò ċ Ĥ Ľ Ŗ ů ó Č ĥ ľ ŗ Ű ô č Ħ Ŀ Ř ű õ Ď ħ ŀ ř Ų ö ď Ĩ Ł Ś ų Đ ĩ ł ś Ŵ ø đ ';
$str.= 'o c H L R u o C h l r U o c H L R u o D h l r U o d I L S c D i l s W o d ';
$acc.= 'Ī Ń Ŝ ŵ ù Ē ī ń ŝ Ŷ Ə ú ē Ĭ Ņ Ş ŷ : ;';
$str.= 'I N S w u E i n s Y e u e I N S y _ - -';
$out = str_replace(explode("\t", $acc), explode("\t", $str), $s);
if($case == -1){
return strtolower(preg_replace('/[^a-zA-Z0-9_-]/', '', $out));
}else if($case == 1){
return strtoupper(preg_replace('/[^a-zA-Z0-9_-]/', '', $out));
}else{
return preg_replace('/[^a-zA-Z0-9_-]/', '', $out);
}
}
//use
echo str_to_url('zażółć GęŚLĄ JAŹń!!!', -1);
//returns zazolc_gesla_jazn
?>
Spaces are converted to underscores.