Как транслитерировать символы латинские в кириллицы буквы?

Ссылка скопирована
PHP
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","з","ъ","ъ","ъ","ъ","З","й","Й","х","Х","в","В","у","У","т","Т","с","С","р","Р","қ","Қ","п","П","о","О","н","Н","м","М","л","Л","к","К","ж","Ж","и","И","ҳ","Ҳ","г","Г","ф","Ф","е","Е","д","Д","б","Б","а","А");

$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...

Нужно решить такую задачу?

Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

Заказать помощь
Лучший ответ
1
Виктор Sys Ответ

Для транслитерации символов латиницы в кириллицу можно использовать функцию, которая будет заменять каждую латинскую букву на соответствующую кириллическую. Вот пример такой функции на языке 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); // Выведет "Привет, Мир!"

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, чтобы добавить другие символы для транслитерации.

Другие ответы (0)

Пока нет других ответов. Будьте первым, кто поможет автору.

Ответить на вопрос

комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Вам также может быть интересно