Как транслитерировать символы латинские в кириллицы буквы?
есть такое массив
$latin = array("O'tsin","o`tsin","O‘TSIN","O’tsin","o’tsin","OʻTSIN","yetsin","YETSIN","Yetsin","xts","o'tsin","o‘tsin","ʼ","O`TSIN","O'TSIN","O‘tsin","O’TSIN","O`tsin","oʻtsin","Oʻtsin","moʻt","Web","WEB","web","mo‘t","is'hoq","MO'T","MOʻT","KSION","ksion","TSI","tsi","b[e]","b[E]","MOʻt","MO't","Mo't","Moʻt","KSIYA","TSE","tse","mo't","ksiya","SENTABR","sentabr","Sentabr","Silindir","sikl","Sikl","SIKL","Sivilizatsiya","SIGARA","sigara","Sigara","SEX","sex","Sex","sivilizatsiya","SENZURA","SIVILIZATSIYA","SENZOR","Sellofan","Sement","sement","Senzor","senzor","Senzura","senzura","Sentner","SIRK","SELLOFAN","SEMENT","moʻjiza","MOʻJIZA","Moʻjiza","mushaf","MUSHAF","Mushaf","sunami","SUNAMI","Sunami","oktyabr","Oktyabr","OKTYABR","SENTYABR","sentyabr","Sentyabr","SIRKA","OKTABR","oktabr","Oktabr","ISHOQ","ishoq","Ishoq","sirka","Sirka","SITATA","sitata","Sitata","SISTIT","sistit","Sistit","SIRROZ","sirroz","Sirroz","SILINDIR","silindir","sirk","Seziy","seziy","sellofan","Sirk","Sent","sent","SENT","''","YA","yo'","Yo'","YO'","yO'","Ya","Ye","Yu","ya","ye","yu","Yo`","yo`","YE","YU","YO’","Yo’","yo’","Yoʻ","YOʻ","yoʻ","o‘","O'`","E`","I`","U`","A`","o'`","e`","i`","u`","a`","O''","I'","U'","A'","o''","E'","i'","u'","a'","O'ʼ","Iʼ","Uʼ","Aʼ","o'ʼ","iʼ","uʼ","aʼ","yo","YO","Yo","CH","SH","Eee"," E","ch","Ch","sh","Sh","gʻ","o`","o'","g’","g`","g'","o’","oʻ","g‘","O'","G`","G'","Oʻ","G’","O’","G‘","O‘","O`","Gʻ","’(p{Lu})","'(p{Lu})","‘(p{Lu})","`(p{Lu})","z","‘","'","`","’","Z","y","Y","x","X","v","V","u","U","t","T","s","S","r","R","q","Q","p","P","o","O","n","N","m","M","l","L","k","K","j","J","i","I","h","H","g","G","f","F","e","E","d","D","b","B","a","A"); $cyrillic = array("Ўтсин","ўтсин","ЎТСИН","Ўтсин","ўтсин","ЎТСИН","етсин","ЕТСИН","Етсин","хтс","ўтсин","ўтсин","ъ","ЎТСИН","ЎТСИН","Ўтсин","ЎТСИН","Ўтсин","ўтсин","Ўтсин","мўът","Веб","ВEБ","веб","мўът","исҳоқ","МЎЪТ","МЎЪТ","ЦИОН","цион","ЦИ","ци","э","Э","МЎЪт","МЎЪт","Мўът","Мўът","КЦИЯ","ЦЕ","це","мўът","кция","СЕНТЯБР","сентябр","Сентябр","Цилиндр","цикл","Цикл","ЦИКЛ","Цивилизация","ЦИГАРА","цигара","Цигара","ЦЕХ","цех","Цех","цивилизация","ЦЕНЗУРА","ЦИВИЛИЗАЦИЯ","ЦЕНЗОР","Целлофан","Цемент","цемент","Цензор","цензор","Цензура","цензура","Центнер","ЦИРК","ЦЕЛЛОФАН","ЦЕМЕНТ","мўъжиза","МЎЪЖИЗA","Мўъжиза","мусҳаф","МУСҲАФ","Мусҳаф","цунами","ЦУНАМИ","Цунами","октябр","Октябр","ОКТЯБР","СЕНТЯБР","сентябр","Сентябр","СИРКА","ОКТЯБР","октябр","Октябр","ИСҲОҚ","исҳоқ","Исҳоқ","сирка","Сирка","ЦИТАТА","цитата","Цитата","ЦИСТИТ","цистит","Цистит","ЦИРРОЗ","цирроз","Цирроз","ЦИЛИНДР","цилиндр","цирк","Цезий","цезий","целлофан","Цирк","Цент","цент","ЦЕНТ","''","Я","йў","Йў","ЙЎ","йЎ","Я","Е","Ю","я","е","ю","Йў","йў","Е","Ю","йў","Йў","йў","Йў","ЙЎ","йў","ў","Ўъ","Эъ","Иъ","Уъ","Аъ","ўъ","эъ","иъ","уъ","аъ","Ўъ","Иъ","Уъ","Аъ","ўъ","ЕЪ","иъ","уъ","аъ","Ўъ","Иъ","Уъ","Аъ","ўъ","иъ","уъ","аъ","ё","Ё","Ё","Ч","Ш","Эээ"," Э","ч","Ч","ш","Ш","ғ","ў","ў","ғ","ғ","ғ","ў","ў","ғ","Ў","Ғ","Ғ","Ў","Ғ","Ў","Ғ","Ў","Ў","Ғ","Ъ$1","Ъ$1","Ъ$1","Ъ$1","з","ъ","ъ","ъ","ъ","З","й","Й","х","Х","в","В","у","У","т","Т","с","С","р","Р","қ","Қ","п","П","о","О","н","Н","м","М","л","Л","к","К","ж","Ж","и","И","ҳ","Ҳ","г","Г","ф","Ф","е","Е","д","Д","б","Б","а","А"); |
$latin = array("O'tsin","o`tsin","O‘TSIN","O’tsin","o’tsin","OʻTSIN","yetsin","YETSIN","Yetsin","xts","o'tsin","o‘tsin","ʼ","O`TSIN","O'TSIN","O‘tsin","O’TSIN","O`tsin","oʻtsin","Oʻtsin","moʻt","Web","WEB","web","mo‘t","is'hoq","MO'T","MOʻT","KSION","ksion","TSI","tsi","b[e]","b[E]","MOʻt","MO't","Mo't","Moʻt","KSIYA","TSE","tse","mo't","ksiya","SENTABR","sentabr","Sentabr","Silindir","sikl","Sikl","SIKL","Sivilizatsiya","SIGARA","sigara","Sigara","SEX","sex","Sex","sivilizatsiya","SENZURA","SIVILIZATSIYA","SENZOR","Sellofan","Sement","sement","Senzor","senzor","Senzura","senzura","Sentner","SIRK","SELLOFAN","SEMENT","moʻjiza","MOʻJIZA","Moʻjiza","mushaf","MUSHAF","Mushaf","sunami","SUNAMI","Sunami","oktyabr","Oktyabr","OKTYABR","SENTYABR","sentyabr","Sentyabr","SIRKA","OKTABR","oktabr","Oktabr","ISHOQ","ishoq","Ishoq","sirka","Sirka","SITATA","sitata","Sitata","SISTIT","sistit","Sistit","SIRROZ","sirroz","Sirroz","SILINDIR","silindir","sirk","Seziy","seziy","sellofan","Sirk","Sent","sent","SENT","''","YA","yo'","Yo'","YO'","yO'","Ya","Ye","Yu","ya","ye","yu","Yo`","yo`","YE","YU","YO’","Yo’","yo’","Yoʻ","YOʻ","yoʻ","o‘","O'`","E`","I`","U`","A`","o'`","e`","i`","u`","a`","O''","I'","U'","A'","o''","E'","i'","u'","a'","O'ʼ","Iʼ","Uʼ","Aʼ","o'ʼ","iʼ","uʼ","aʼ","yo","YO","Yo","CH","SH","Eee"," E","ch","Ch","sh","Sh","gʻ","o`","o'","g’","g`","g'","o’","oʻ","g‘","O'","G`","G'","Oʻ","G’","O’","G‘","O‘","O`","Gʻ","’(p{Lu})","'(p{Lu})","‘(p{Lu})","`(p{Lu})","z","‘","'","`","’","Z","y","Y","x","X","v","V","u","U","t","T","s","S","r","R","q","Q","p","P","o","O","n","N","m","M","l","L","k","K","j","J","i","I","h","H","g","G","f","F","e","E","d","D","b","B","a","A"); $cyrillic = array("Ўтсин","ўтсин","ЎТСИН","Ўтсин","ўтсин","ЎТСИН","етсин","ЕТСИН","Етсин","хтс","ўтсин","ўтсин","ъ","ЎТСИН","ЎТСИН","Ўтсин","ЎТСИН","Ўтсин","ўтсин","Ўтсин","мўът","Веб","ВEБ","веб","мўът","исҳоқ","МЎЪТ","МЎЪТ","ЦИОН","цион","ЦИ","ци","э","Э","МЎЪт","МЎЪт","Мўът","Мўът","КЦИЯ","ЦЕ","це","мўът","кция","СЕНТЯБР","сентябр","Сентябр","Цилиндр","цикл","Цикл","ЦИКЛ","Цивилизация","ЦИГАРА","цигара","Цигара","ЦЕХ","цех","Цех","цивилизация","ЦЕНЗУРА","ЦИВИЛИЗАЦИЯ","ЦЕНЗОР","Целлофан","Цемент","цемент","Цензор","цензор","Цензура","цензура","Центнер","ЦИРК","ЦЕЛЛОФАН","ЦЕМЕНТ","мўъжиза","МЎЪЖИЗA","Мўъжиза","мусҳаф","МУСҲАФ","Мусҳаф","цунами","ЦУНАМИ","Цунами","октябр","Октябр","ОКТЯБР","СЕНТЯБР","сентябр","Сентябр","СИРКА","ОКТЯБР","октябр","Октябр","ИСҲОҚ","исҳоқ","Исҳоқ","сирка","Сирка","ЦИТАТА","цитата","Цитата","ЦИСТИТ","цистит","Цистит","ЦИРРОЗ","цирроз","Цирроз","ЦИЛИНДР","цилиндр","цирк","Цезий","цезий","целлофан","Цирк","Цент","цент","ЦЕНТ","''","Я","йў","Йў","ЙЎ","йЎ","Я","Е","Ю","я","е","ю","Йў","йў","Е","Ю","йў","Йў","йў","Йў","ЙЎ","йў","ў","Ўъ","Эъ","Иъ","Уъ","Аъ","ўъ","эъ","иъ","уъ","аъ","Ўъ","Иъ","Уъ","Аъ","ўъ","ЕЪ","иъ","уъ","аъ","Ўъ","Иъ","Уъ","Аъ","ўъ","иъ","уъ","аъ","ё","Ё","Ё","Ч","Ш","Эээ"," Э","ч","Ч","ш","Ш","ғ","ў","ў","ғ","ғ","ғ","ў","ў","ғ","Ў","Ғ","Ғ","Ў","Ғ","Ў","Ғ","Ў","Ў","Ғ","Ъ$1","Ъ$1","Ъ$1","Ъ$1","з","ъ","ъ","ъ","ъ","З","й","Й","х","Х","в","В","у","У","т","Т","с","С","р","Р","қ","Қ","п","П","о","О","н","Н","м","М","л","Л","к","К","ж","Ж","и","И","ҳ","Ҳ","г","Г","ф","Ф","е","Е","д","Д","б","Б","а","А");
ну это полностью видеть ошибку на букву
э
если слова будет
eshik
выдает не правильно ответ
ешик
если скажу короткий определить
э
и
е
Дополнительно:
Нагляднее и удобнее использовать `strtr()` так как можно сгруппировать пары для перевода
$str = strtr($str, [ "O'tsin" => "Ўтсин", "yetsin" => "етсин", //и тд ]); |
$str = strtr($str, [ "O'tsin" => "Ўтсин", "yetsin" => "етсин", //и тд ]);
Все замены делаются поочередно, поэтому вначале надо разместить замены сочетаний букв, esh -> эш как вариант
Ответы:
https://stackoverflow.com/questions/2994819/php-st...
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос
Для транслитерации символов латиницы в кириллицу можно использовать функцию, которая будет заменять каждую латинскую букву на соответствующую кириллическую. Вот пример такой функции на языке PHP:
function transliterate($string) { $converter = array( 'a' => 'а', 'b' => 'б', 'v' => 'в', 'g' => 'г', 'd' => 'д', 'e' => 'е', 'yo' => 'ё', 'zh' => 'ж', 'z' => 'з', 'i' => 'и', 'y' => 'й', 'k' => 'к', 'l' => 'л', 'm' => 'м', 'n' => 'н', 'o' => 'о', 'p' => 'п', 'r' => 'р', 's' => 'с', 't' => 'т', 'u' => 'у', 'f' => 'ф', 'h' => 'х', 'c' => 'ц', 'ch' => 'ч', 'sh' => 'ш', 'shch' => 'щ', '' => 'ъ', 'y' => 'ы', '' => 'ь', 'e' => 'э', 'yu' => 'ю', 'ya' => 'я', 'A' => 'А', 'B' => 'Б', 'V' => 'В', 'G' => 'Г', 'D' => 'Д', 'E' => 'Е', 'Yo' => 'Ё', 'Zh' => 'Ж', 'Z' => 'З', 'I' => 'И', 'Y' => 'Й', 'K' => 'К', 'L' => 'Л', 'M' => 'М', 'N' => 'Н', 'O' => 'О', 'P' => 'П', 'R' => 'Р', 'S' => 'С', 'T' => 'Т', 'U' => 'У', 'F' => 'Ф', 'H' => 'Х', 'C' => 'Ц', 'Ch' => 'Ч', 'Sh' => 'Ш', 'Shch' => 'Щ', '' => 'Ъ', 'Y' => 'Ы', '' => 'Ь', 'E' => 'Э', 'Yu' => 'Ю', 'Ya' => 'Я', ); return strtr($string, $converter); } $text = "Hello, World!"; echo transliterate($text); // Выведет "Привет, Мир!"
Эта функция будет заменять все латинские буквы в строке на соответствующие кириллические. Вы можете расширить массив $converter, чтобы добавить другие символы для транслитерации.