3v4l.org

run code in 300+ PHP versions simultaneously
<?php function translit($st) { $st = strtr($st, "абвгдежзийклмнопрстуфыэАБВГДЕЖЗИЙКЛМНОПРСТУФЫЭ", "abvgdegziyklmnoprstufieABVGDEGZIYKLMNOPRSTUFIE" ); $st = strtr($st, array( 'ё'=>"yo", 'х'=>"h", 'ц'=>"ts", 'ч'=>"ch", 'ш'=>"sh", 'щ'=>"shch", 'ъ'=>'', 'ь'=>'', 'ю'=>"yu", 'я'=>"ya", 'Ё'=>"Yo", 'Х'=>"H", 'Ц'=>"Ts", 'Ч'=>"Ch", 'Ш'=>"Sh", 'Щ'=>"Shch", 'Ъ'=>'', 'Ь'=>'', 'Ю'=>"Yu", 'Я'=>"Ya", )); return $st; } $t_word = 'Κέντρο τεχνολογικής άμυνας και επιστημονικής έρευνας'; if(preg_match('/[А-Яа-я]/i',$t_word)){ $t_word = translit($t_word); } echo $t_word; echo "\n"; echo metaphone($t_word,6);
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 6, Position 2 = 10
Branch analysis from position: 6
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 10
filename:       /in/50udK
function name:  (null)
number of ops:  18
compiled vars:  !0 = $t_word
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   16     0  E >   ASSIGN                                                   !0, '%CE%9A%CE%AD%CE%BD%CF%84%CF%81%CE%BF+%CF%84%CE%B5%CF%87%CE%BD%CE%BF%CE%BB%CE%BF%CE%B3%CE%B9%CE%BA%CE%AE%CF%82+%CE%AC%CE%BC%CF%85%CE%BD%CE%B1%CF%82+%CE%BA%CE%B1%CE%B9+%CE%B5%CF%80%CE%B9%CF%83%CF%84%CE%B7%CE%BC%CE%BF%CE%BD%CE%B9%CE%BA%CE%AE%CF%82+%CE%AD%CF%81%CE%B5%CF%85%CE%BD%CE%B1%CF%82'
   17     1        INIT_FCALL                                               'preg_match'
          2        SEND_VAL                                                 '%2F%5B%D0%90-%D0%AF%D0%B0-%D1%8F%5D%2Fi'
          3        SEND_VAR                                                 !0
          4        DO_ICALL                                         $2      
          5      > JMPZ                                                     $2, ->10
   18     6    >   INIT_FCALL                                               'translit'
          7        SEND_VAR                                                 !0
          8        DO_FCALL                                      0  $3      
          9        ASSIGN                                                   !0, $3
   20    10    >   ECHO                                                     !0
   21    11        ECHO                                                     '%0A'
   22    12        INIT_FCALL                                               'metaphone'
         13        SEND_VAR                                                 !0
         14        SEND_VAL                                                 6
         15        DO_ICALL                                         $5      
         16        ECHO                                                     $5
         17      > RETURN                                                   1

Function translit:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/50udK
function name:  translit
number of ops:  14
compiled vars:  !0 = $st
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   RECV                                             !0      
    3     1        INIT_FCALL                                               'strtr'
          2        SEND_VAR                                                 !0
    4     3        SEND_VAL                                                 '%D0%B0%D0%B1%D0%B2%D0%B3%D0%B4%D0%B5%D0%B6%D0%B7%D0%B8%D0%B9%D0%BA%D0%BB%D0%BC%D0%BD%D0%BE%D0%BF%D1%80%D1%81%D1%82%D1%83%D1%84%D1%8B%D1%8D%D0%90%D0%91%D0%92%D0%93%D0%94%D0%95%D0%96%D0%97%D0%98%D0%99%D0%9A%D0%9B%D0%9C%D0%9D%D0%9E%D0%9F%D0%A0%D0%A1%D0%A2%D0%A3%D0%A4%D0%AB%D0%AD'
    5     4        SEND_VAL                                                 'abvgdegziyklmnoprstufieABVGDEGZIYKLMNOPRSTUFIE'
          5        DO_ICALL                                         $1      
    3     6        ASSIGN                                                   !0, $1
    7     7        INIT_FCALL                                               'strtr'
          8        SEND_VAR                                                 !0
    8     9        SEND_VAL                                                 <array>
         10        DO_ICALL                                         $3      
    7    11        ASSIGN                                                   !0, $3
   13    12      > RETURN                                                   !0
   14    13*     > RETURN                                                   null

End of function translit

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
169.85 ms | 1402 KiB | 20 Q