Интереса ради решили на скорую руку проверить, как отличается скорость работы в разных версиях PHP при работе с конвертацией символов.Решено было измерить затраты при следующих подходах:transliterator_transliterateсравнение каждого символа с каждым из словаря (двойной foreach)str_replace посимвольный обход алфавита (внутри одного foreach)preg_replace посимвольный обход алфавита (внутри одного foreach)Версии PHP: 5.4, 5.6, 7.0, 7.4, 8.1В качестве подопытного выступал 1-й том «Война и мир» или 736К знаков.Проводилось по 5 замеров на каждый подход. Результаты - среднее арифметическое. В секундах.Результаты на картинке:Разница заметна только при переходе с версии 5+ на 7+, в остальных ситуациях все в пределах погрешности.Замена по регулярке была простой: preg_replace("/$s1/iu", $s2, $subj), где $s - искомый символ из алфавита, а $s2 - заменяемый из алфавита. Сам же алфавит был такого плана: [$s2] => $s1.