Кодирую сообщения в base64, но кодировать кириллицу затратно по памяти, а вот латиница кодируется чуть ли не в два раза меньше. Задается вопрос, как переводить только буквы на латиницу и наоборот. Но чтобы без таких ошибок.
я => ya букву "я" мы перевели. а вот если обратно то латинская буква "а" заменит ее в "ya".
Эхехех... Называется это транслитерация. Выглядит примерно так
function translit($text, $toEng = true) {
$trans = array(
"а" => "a",
"б" => "b",
"в" => "v",
"г" => "g",
"д" => "d",
"е" => "e",
"ё" => "e",
"ж" => "zh",
"з" => "z",
"и" => "i",
"й" => "y",
"к" => "k",
"л" => "l",
"м" => "m",
"н" => "n",
"о" => "o",
"п" => "p",
"р" => "r",
"с" => "s",
"т" => "t",
"у" => "u",
"ф" => "f",
"х" => "kh",
"ц" => "ts",
"ч" => "ch",
"ш" => "sh",
"щ" => "shch",
"ы" => "y",
"э" => "e",
"ю" => "yu",
"я" => "ya",
"А" => "A",
"Б" => "B",
"В" => "V",
"Г" => "G",
"Д" => "D",
"Е" => "E",
"Ё" => "E",
"Ж" => "Zh",
"З" => "Z",
"И" => "I",
"Й" => "Y",
"К" => "K",
"Л" => "L",
"М" => "M",
"Н" => "N",
"О" => "O",
"П" => "P",
"Р" => "R",
"С" => "S",
"Т" => "T",
"У" => "U",
"Ф" => "F",
"Х" => "Kh",
"Ц" => "Ts",
"Ч" => "Ch",
"Ш" => "Sh",
"Щ" => "Shch",
"Ы" => "Y",
"Э" => "E",
"Ю" => "Yu",
"Я" => "Ya",
"Ъ" => "",
"ъ" => "",
"ь" => "",
"Ь" => ""
);
if (!$toEng) $trans = array_flip($trans);
return str_replace(array_keys($trans), $trans, $text);
}
Аналогично сделать и обратное, только вопрос в другом, либо проходить массив литер в обратном порядке, или как то придумывать как отделять символы
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Как взять определённое значение из исходного кода определённого сайта?
Есть скрипт который последовательно грузит файлы на сервер в группу вкНо проблема в том, что после 20 файлов выскакивает капча и не дает грузить...