ГОСТ транслитерация
В интеренете с русским языком все плохо (и не думайте что домен рф поможет все так же и останется), есть латиница и она всех устраивает на самом деле, другой вопрос, что не все понимаю как нужно транслитом писать. В России существует ГОСТ 7.79-2000 (взамен старого 16876-71) по траслитерации.
Итак рассмотрим сам ГОСТ и попробуем что-то с этим сделать …Смотрим таблицу траслитерации c русского на латинский:
| а | a |
| б | b |
| в | v |
| г | g |
| д | d |
| е | e |
| ё | yo |
| ж | zh |
| з | z |
| и | i, i’ |
| й | j |
| к | k |
| л | l |
| м | m |
| н | n |
| о | o |
| п | p |
| р | r |
| с | s |
| т | t |
| у | u |
| ф | f |
| х | x |
| ц | cz, c |
| ч | ch |
| ш | sh |
| щ | shh |
| ъ | « |
| ы | y’ |
| ь | ` |
| э | e` |
| ю | yu |
| я | ya |
| апостров ‘ | ‘ |
Эту табличку Вы можете распечатать и повесить для тех кто не умеет правильно транслицировать русский в латиницу.
Как мы можем использовать эти знания например в php?
< ?php
function translit($str) {
$str=strtr($str,"абвгдезиклмнопрстуфцъыь",
"abvgdeziklmnoprstufс\"y'");
$str=strtr($str,"АБВГДЕЗИКЛМНОПРСТУФЦЪЫЬ",
"ABVGDEZIKLMNOPRSTUFС\"Y'");
$str=strtr($str,
array(
"э"=>"eh", "х"=>"kh", "й"=>"jj", "ё"=>"jo", "ж"=>"zh", "ч"=>"ch", "ш"=>"sh", "щ"=>"shh", "ю"=>"yu", "я"=>"ya", "Э"=>"Eh", "Х"=>"Kh", "Й"=>"Jj", "Ё"=>"Jo", "Ж"=>"ZH", "Ч"=>"CH", "Ш"=>"SH", "Щ"=>"SHH", "Ю"=>"YU", "Я"=>"YA", "ї"=>"i", "Ї"=>"Yi", "є"=>"ie", "Є"=>"Ye"
)
);
return $str;
}
?>