Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Zamienić wszystkie znaki diaktryczne np. ę=>e
Forum PHP.pl > Forum > Przedszkole
lopez86
Szukam funkcji lub rozwiązania mam nadzieję że jest taka funkcja bo jak nie to mam zonka. Chodzi o zamianę wszystkich nie tylko polskich znaków np. ("É") oraz niemieckich , francuskich i innych na jakieś odpowiedniki czyli É=>E , jest tego bardzo dużo i trudno jest się w tym połapać.

Albo gdzie by znaleźć (jeżeli nie ma funkcji) spis wszystkich znaków specjalnych w jakimś rozsądnym formacie ?
Cienki1980
Funkcji takiej to chyba nie ma ... jeszcze się nie spotkałem przynajmniej dlatego piszę chyba.

Może ktoś napisał klasę robiącą takie coś .. ale też się nie spotkałem.

Co do znaków możesz znaleźć je np http://www.asciitable.com/ na tej stronie.
lopez86
znalazłem jedną funkcję i dodałem kilka elementów swoich powinno działać smile.gif
  1. <?php
  2. function transcribe($string,$r=0) {
  3.  
  4.  $string1 = strtr($string,array("Ą" => "A", "ą" => "a",
  5.  
  6.  "ć" => "c", "Ć" => "C", "Ę" => "E", "ę" => "e",
  7.  
  8.  "ł" => "l", "Ł" => "L", "Ń" => "N", "ń" => "n",
  9.  
  10.  "ó" => "o", "Ó" => "O", "ś" => "s", "Ś" => "S",
  11.  
  12.  "ż" => "z", "Ż" => "Z", "Ź" => "Z", "ź" => "z", "," => "", "!" => "","@"=>"",
  13.  
  14.  "#"=>"","$"=>"","%"=>"","^"=>"","&"=>"","*"=>"","("=>"",
  15.  
  16.  ")"=>"","-"=>".","_"=>".","+"=>".","="=>".",";"=>"",":"=>"","""=>"",
  17.  
  18.  "}"=>"","{"=>"","["=>"","]"=>"",""=>"","|"=>"","'"=>"","~"=>"",
  19.  
  20.  "`"=>"","<"=>"",">"=>"","?"=>"","/"=>""));
  21.  
  22.  
  23.  
  24. $string = strtr($string1,
  25.  "xA1xAAxBAxBFxC0xC1xC2xC3xC5xC7
  26. xC8xC9xCAxCBxCCxCDxCExCFxD0xD1
  27. xD2xD3xD4xD5xD8xD9xDAxDBxDDxE0
  28. xE1xE2xE3xE5xE7xE8xE9xEAxEBxEC
  29. xEDxEExEFxF0xF1xF2xF3xF4xF5xF8
  30. xF9xFAxFBxFDxFF",
  31. "!ao?AAAAAC
  32. EEEEIIIIDN
  33. OOOOOUUUYa
  34. aaaaceeeei
  35. iiidnooooo
  36. uuuyy");  
  37. $string2 = strtr($string, array("xC4"=>"Ae", "xC6"=>"AE", "xD6"=>"Oe", "xDC"=>"Ue", "xDE"=>"TH", "xDF"=>"ss", "xE4"=>"ae", "xE6"=>"ae", "xF6"=>"oe", "xFC"=>"ue", "xFE"=>"th"));
  38.  
  39. if($r){$string2=strtolower($string2);}
  40.  
  41.  
  42. return($string2);
  43. }
  44. ?>


działa z niemieckimi francuskimi i polskimi z resztą nie wiem bo nie sprawdzałem dodałem też usunięcie znaków specjalnych (w moim przypadku było to konieczne ale można sobie wyrzucić smile.gif do tego jakbyco kilka znaków specjalnych do wyrzucenia z tekstu
  1. <?php
  2. $txt = strtolower(strtr($url,
  3.  "xe1xc1xe0xc0xe2xc2xe4xc4xe3xc3xe5xc5".
  4.  "xaaxe7xc7xe9xc9xe8xc8xeaxcaxebxcbxed".
  5.  "xcdxecxccxeexcexefxcfxf1xd1xf3xd3xf2".
  6.  "xd2xf4xd4xf6xd6xf5xd5x8xd8xbaxf0xfa".
  7.  "xdaxf9xd9xfbxdbxfcxdcxfdxddxffxe6xc6xdf",
  8.  "aAaAaAaAaAaAacCeEeEeEeEiIiIiIiInNoOoOoOoOoOoOoouUuUuUuUyYyaAs")); 
  9.  
  10. $txt2=strtr($txt,array("?"=>"","*"=>"","$"=>"","_"=>".",","=>".","("=>"",")"=>"",'%'=>"","&"=>"",""=>"","'"=>"","/"=>"",
  11. "€"=>"",'"'=>"","i&raquo;ż"=>"","™"=>"","`"=>"",""=>"","&laquo;"=>"","-"=>".","ˇ"=>"","”"=>"","!"=>"","˛"=>"","ź"=>"","ć"=>"","+"=>"","="=>"","^"=>"",
  12. "‚"=>"","†"=>"","’"=>"",":"=>"",";"=>"","&copy;"=>"","•"=>"","¤"=>"","đ"=>"","„"=>"","›"=>"",""=>"","ť"=>"","&reg;"=>"","‡"=>"","š"=>"",
  13. "¨"=>"","ƒ"=>"","ł"=>"","ľ"=>"","¸"=>"","~"=>"","‹"=>"","&raquo;"=>"","&brvbar;"=>"","˝"=>"","&para;"=>"","ź"=>"z","ą"=>"a","°"=>"","§"=>"","&not;"=>"",
  14. "ś"=>"s","n"=>""," "=>"","—"=>"","‘"=>"","
  15. "=>"","÷"=>"","ř"=>"r","ž"=>"","ż"=>"z","ę"=>"e","ţ"=>"","|"=>"","´"=>"","˘"=>"","&micro;"=>"u","–"=>"","“"=>"","…"=>"","‰"=>"",
  16. "&plusmn;"=>"","&middot;"=>"","<"=>"",">"=>"","["=>".","]"=>".","{"=>".","}"=>".","í"=>"","&agrave;"=>"a","é"=>"e"
  17. ));
  18. ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.