Author Topic: Как перевести текст с кириллицы на латиницу?  (Read 1166 times)

0 Members and 1 Guest are viewing this topic.

SimplY

  • Активный участник
  • ***
  • Posts: 125
    • View Profile
Например,

$ru = "Петров"

// Скрипт переводит на англ

$en = "Petrov"

Или

$ru = "Молоко"

// Скрипт переводит на англ

$en = "Moloko"
« Last Edit: December 03, 2021, 04:47:25 PM by SimplY »

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Code: (clickermann) [Select]
IF(arrsize($arr_ru)=0)  //выполняем один раз при старте
   STRSEPARATE("А,Б,В,Г,Д,Е,Ё,Ж,З,И,Й,К,Л,М,Н,О,П,Р,С,Т,У,Ф,Х,Ц,Ч,Ш,Щ,Ы,Э,Ю,Я,а,б,в,г,д,е,ё,ж,з,и,й,к,л,м,н,о,п,р,с,т,у,ф,х,ц,ч,ш,щ,ы,э,ю,я", ",", $arr_ru)
   STRSEPARATE("A,B,V,G,D,E,E,ZH,Z,I,I,K,L,M,N,O,P,R,S,T,U,F,KH,TC,CH,SH,SHCH,Y,E,IU,IA,a,b,v,g,d,e,e,zh,z,i,i,k,l,m,n,o,p,r,s,t,u,f,kh,tc,ch,sh,shch,y,e,iu,ia", ",", $arr_en)
END_IF


SUB(transliteration, $ru_str) //подпрограмма по замене ру символов латинскими
   FOR($i=0,$i<arrsize($arr_ru))
      $ru_str=STRREPLACE($ru_str, $arr_ru[$i], $arr_en[$i])
   END_CYC
   $en_str = $ru_str
END_SUB


// основной скрипт с вызовом подпрограммы
$ru = "Петров"
transliteration($ru)
print($en_str)  //в логе результат "Petrov"


halt // стоп

SimplY

  • Активный участник
  • ***
  • Posts: 125
    • View Profile
Спасибо!!!