3v4l.org

run code in 300+ PHP versions simultaneously
<?php $l = "Montgomery,-AL"; $states = []; $states["AL"] = "Alabama"; $states["MI"] = "Michigan"; $stateCode = substr($l, -2); $state = $states[$stateCode]; echo $state;
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/2f1TQ
function name:  (null)
number of ops:  15
compiled vars:  !0 = $l, !1 = $states, !2 = $stateCode, !3 = $state
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ASSIGN                                                   !0, 'Montgomery%2C-AL'
    4     1        ASSIGN                                                   !1, <array>
    5     2        ASSIGN_DIM                                               !1, 'AL'
          3        OP_DATA                                                  'Alabama'
    6     4        ASSIGN_DIM                                               !1, 'MI'
          5        OP_DATA                                                  'Michigan'
    8     6        INIT_FCALL                                               'substr'
          7        SEND_VAR                                                 !0
          8        SEND_VAL                                                 -2
          9        DO_ICALL                                         $8      
         10        ASSIGN                                                   !2, $8
    9    11        FETCH_DIM_R                                      ~10     !1, !2
         12        ASSIGN                                                   !3, ~10
   10    13        ECHO                                                     !3
   11    14      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
143.06 ms | 1394 KiB | 15 Q