3v4l.org

run code in 500+ PHP versions simultaneously
<?php $phrases = [ 'моксва'=>'москва', 'ротсов'=>'ростов', 'геледнжик'=>'геленджик', '\bруз\b'=> 'рус', ]; echo strtr('моксва', $phrases) . "\n"; echo strtr('моксва - руз столица, зато в геледнжике много воды', $phrases) . "\n"; //москва //москва - руз столица, зато в геленджике много воды $string = 'моксва - руз столица, зато в геледнжике много воды'; foreach($phrases as $key => $item) { $string = preg_replace('~' . $key .'~isu' , $item, $string); } echo $string; //москва - рус столица, зато в геленджике много воды
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 9, Position 2 = 17
Branch analysis from position: 9
2 jumps found. (Code = 78) Position 1 = 10, Position 2 = 17
Branch analysis from position: 10
1 jumps found. (Code = 42) Position 1 = 9
Branch analysis from position: 9
Branch analysis from position: 17
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 17
filename:       /in/Zj0nm
function name:  (null)
number of ops:  20
compiled vars:  !0 = $phrases, !1 = $string, !2 = $item, !3 = $key
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                       !0, <array>
   10     1        FRAMELESS_ICALL_2                strtr               ~5      '%D0%BC%D0%BE%D0%BA%D1%81%D0%B2%D0%B0', !0
          2        CONCAT                                               ~6      ~5, '%0A'
          3        ECHO                                                         ~6
   11     4        FRAMELESS_ICALL_2                strtr               ~7      '%D0%BC%D0%BE%D0%BA%D1%81%D0%B2%D0%B0+-+%D1%80%D1%83%D0%B7+%D1%81%D1%82%D0%BE%D0%BB%D0%B8%D1%86%D0%B0%2C+%D0%B7%D0%B0%D1%82%D0%BE+%D0%B2+%D0%B3%D0%B5%D0%BB%D0%B5%D0%B4%D0%BD%D0%B6%D0%B8%D0%BA%D0%B5+%D0%BC%D0%BD%D0%BE%D0%B3%D0%BE+%D0%B2%D0%BE%D0%B4%D1%8B', !0
          5        CONCAT                                               ~8      ~7, '%0A'
          6        ECHO                                                         ~8
   16     7        ASSIGN                                                       !1, '%D0%BC%D0%BE%D0%BA%D1%81%D0%B2%D0%B0+-+%D1%80%D1%83%D0%B7+%D1%81%D1%82%D0%BE%D0%BB%D0%B8%D1%86%D0%B0%2C+%D0%B7%D0%B0%D1%82%D0%BE+%D0%B2+%D0%B3%D0%B5%D0%BB%D0%B5%D0%B4%D0%BD%D0%B6%D0%B8%D0%BA%D0%B5+%D0%BC%D0%BD%D0%BE%D0%B3%D0%BE+%D0%B2%D0%BE%D0%B4%D1%8B'
   18     8      > FE_RESET_R                                           $10     !0, ->17
          9    > > FE_FETCH_R                                           ~11     $10, !2, ->17
         10    >   ASSIGN                                                       !3, ~11
   19    11        CONCAT                                               ~13     '%7E', !3
         12        CONCAT                                               ~14     ~13, '%7Eisu'
         13        FRAMELESS_ICALL_3                preg_replace        ~15     ~14, !2
         14        OP_DATA                                                      !1
         15        ASSIGN                                                       !1, ~15
   18    16      > JMP                                                          ->9
         17    >   FE_FREE                                                      $10
   22    18        ECHO                                                         !1
   23    19      > RETURN                                                       1

Generated using Vulcan Logic Dumper, using php 8.5.0


preferences:
236.69 ms | 1464 KiB | 8 Q