Script per trasformare i testi russi nella relativa pronuncia in caratteri latini Thursday, Jun 28 2007
Tools 2:33 pm
In quest’ultimo periodo sto cominciando ad interessarmi ai motori di ricerca russi e quindi alla struttura di un sito russo.
E’ quindi nata l’esigenza di poter creare degli url statici basandomi sui titoli delle pagine. Il problema in questo caso sta nell’impossibilità in molti browsers di visualizzare correttamente i caratteri non latini nella barra degli indirizzi (provate a navigare su ru.wikipedia.org con firefox e capirete il problema).
Per questo ho creato questo piccolo script che trasforma un testo da caratteri russi nella relativa pronuncia in caratteri latini:
<?
$enlow = array("a", "a", "b", "b", "v", "v", "g", "g", "d", "d", "je", "je", "jo", "jo", "zh", "zh", "z", "z", "i", "i", "j", "j", "k", "k", "l", "l", "m", "m", "n", "n", "o", "o", "p", "p", "r", "r", "s", "s", "t", "t", "u", "u", "f", "f", "h", "h", "ts", "ts", "ch", "ch", "sh", "sh", "shch", "shch", "", "", "y", "y", "", "", "e", "e", "ju", "ju", "ja", "ja");
$ru = array("А", "а", "Б", "б", "В", "в", "Г", "г", "Д", "д", "Е", "е", "Ё", "ё", "Ж", "ж", "З", "з", "И", "и", "Й", "й", "К", "к", "Л", "л", "М", "м", "Н", "н", "О", "о", "П", "п", "Р", "р", "С", "с", "Т", "т", "У", "у", "Ф", "ф", "Х", "х", "Ц", "ц", "Ч", "ч", "Ш", "ш", "Щ", "щ", "Ъ", "ъ", "Ы", "ы", "Ь", "ь", "Э", "э", "Ю", "ю", "Я", "я");
$uni = array("А" => "А","а" => "а","Б" => "Б","б" => "б","В" => "В","в" => "в","Г" => "Г","г" => "г","Д" => "Д","д" => "д","Е" => "Е","е" => "е","Ж" => "Ж","ж" => "ж","З" => "З","з" => "з","И" => "И","и" => "и","Й" => "Й","й" => "й","К" => "К","к" => "к","Л" => "Л","л" => "л","М" => "М","м" => "м","Н" => "Н","н" => "н","О" => "О","о" => "о","П" => "П","п" => "п","Р" => "Р","р" => "р","С" => "С","с" => "с","Т" => "Т","т" => "т","У" => "У","у" => "у","Ф" => "Ф","ф" => "ф","Х" => "Х","х" => "х","Ц" => "Ц","ц" => "ц","Ч" => "Ч","ч" => "ч","Ш" => "Ш","ш" => "ш","Щ" => "Щ","щ" => "щ","Ъ" => "Ъ","ъ" => "ъ","Ы" => "Ы","ы" => "ы","Ь" => "Ь","ь" => "ь","Э" => "Э","э" => "э","Ю" => "Ю","ю" => "ю","Я" => "Я","я" => "я");
$str_url = stripslashes(str_replace($ru, $enlow, strtr($str_url, $uni)));
?>
Potete modificarlo a piacere, trasformarlo in una funzione, in una classe, in quello che volete
io sono troppo pigro per farlo!
Trackback URI



Questo blog è parte del network
June 28th, 2007 at 5:48 pm
Thx, so easy to do it with php
June 28th, 2007 at 6:57 pm
u’re welcome
i thought your comment was spam lol
August 18th, 2007 at 1:49 am
Ciao Kerouak
mi sono permesso di utilizzare il tuo script con qualche modifichetta necessaria.
Ottimo per i miei utilizzi.
Ti ringrazio e ti saluto e speriamo nuovamente di incontrarci in un prossimo raduno GT.
Alibrando (donbairo)