<?php
$charMap = [
"й"=>"y", "ц"=>"c", "у"=>"iy", "к"=>"k", "е"=>"e", "н"=>"n",
"г"=>"g", "ш"=>"sh", "щ"=>"sh", "з"=>"th", "х"=>"h", "ф"=>"ph",
"ы"=>"i", "в"=>"v", "а"=>"a", "п"=>"p", "р"=>"r", "о"=>"o",
"л"=>"l", "д"=>"d", "ж"=>"j", "э"=>"e", "я"=>"ya", "ч"=>"ch",
"с"=>"s", "м"=>"m", "и"=>"i", "т"=>"t", "б"=>"b", "ю"=>"yu"];
function transcript($input, $charMap){
$i = 0;
$result = "";
while ($char = mb_substr($input, $i++, 1, 'UTF-8')) { $result .= $charMap[$char] ?: $char;
}
return $result;
};
echo transcript("Виталий", $charMap) . "\n";
echo transcript("Виталий2", $charMap);
PD9waHAKCgogICRjaGFyTWFwID0gWwogICAgICAgICLQuSI9PiJ5IiwgItGGIj0+ImMiLCAi0YMiPT4iaXkiLCAi0LoiPT4iayIsICLQtSI9PiJlIiwgItC9Ij0+Im4iLAogICAgICAgICLQsyI9PiJnIiwgItGIIj0+InNoIiwgItGJIj0+InNoIiwgItC3Ij0+InRoIiwgItGFIj0+ImgiLCAi0YQiPT4icGgiLAogICAgICAgICLRiyI9PiJpIiwgItCyIj0+InYiLCAi0LAiPT4iYSIsICLQvyI9PiJwIiwgItGAIj0+InIiLCAi0L4iPT4ibyIsCiAgICAgICAgItC7Ij0+ImwiLCAi0LQiPT4iZCIsICLQtiI9PiJqIiwgItGNIj0+ImUiLCAi0Y8iPT4ieWEiLCAi0YciPT4iY2giLAogICAgICAgICLRgSI9PiJzIiwgItC8Ij0+Im0iLCAi0LgiPT4iaSIsICLRgiI9PiJ0IiwgItCxIj0+ImIiLCAi0Y4iPT4ieXUiXTsKCiAgICBmdW5jdGlvbiB0cmFuc2NyaXB0KCRpbnB1dCwgJGNoYXJNYXApewogICAgICAJJGlucHV0ID0gbWJfc3RydG9sb3dlcigkaW5wdXQpOwogICAgICAJJGkgPSAwOwogICAgICAgICRyZXN1bHQgPSAiIjsKCQl3aGlsZSAoJGNoYXIgPSBtYl9zdWJzdHIoJGlucHV0LCAkaSsrLCAxLCAnVVRGLTgnKSkgewoJCQkkcmVzdWx0IC49ICRjaGFyTWFwWyRjaGFyXSA/OiAkY2hhcjsKCQl9CiAgICAgICAgCiAgICAgICAgcmV0dXJuICRyZXN1bHQ7CiAgICB9OwogICAgCiAgICBlY2hvIHRyYW5zY3JpcHQoItCS0LjRgtCw0LvQuNC5IiwgJGNoYXJNYXApIC4gIlxuIjsKICAgIGVjaG8gdHJhbnNjcmlwdCgi0JLQuNGC0LDQu9C40LkyIiwgJGNoYXJNYXApOw==