3v4l.org

run code in 500+ PHP versions simultaneously
<?php $array = [&$a, &$b]; $reversed = array_reverse($array); $array[0] = 1; $array[1] = 2; var_dump($reversed); unset($a, $b, $reversed); $reversed = array_reverse($array); $array[0] = 3; $array[1] = 4; var_dump($reversed);
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ojCPY
function name:  (null)
number of ops:  29
compiled vars:  !0 = $array, !1 = $a, !2 = $b, !3 = $reversed
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
    3     0  E >   INIT_ARRAY                                           ~4      !1
          1        ADD_ARRAY_ELEMENT                                    ~4      !2
          2        ASSIGN                                                       !0, ~4
    4     3        INIT_FCALL                                                   'array_reverse'
          4        SEND_VAR                                                     !0
          5        DO_ICALL                                             $6      
          6        ASSIGN                                                       !3, $6
    6     7        ASSIGN_DIM                                                   !0, 0
          8        OP_DATA                                                      1
    7     9        ASSIGN_DIM                                                   !0, 1
         10        OP_DATA                                                      2
    8    11        INIT_FCALL                                                   'var_dump'
         12        SEND_VAR                                                     !3
         13        DO_ICALL                                                     
   10    14        UNSET_CV                                                     !1
         15        UNSET_CV                                                     !2
         16        UNSET_CV                                                     !3
   11    17        INIT_FCALL                                                   'array_reverse'
         18        SEND_VAR                                                     !0
         19        DO_ICALL                                             $11     
         20        ASSIGN                                                       !3, $11
   12    21        ASSIGN_DIM                                                   !0, 0
         22        OP_DATA                                                      3
   13    23        ASSIGN_DIM                                                   !0, 1
         24        OP_DATA                                                      4
   14    25        INIT_FCALL                                                   'var_dump'
         26        SEND_VAR                                                     !3
         27        DO_ICALL                                                     
         28      > RETURN                                                       1

Generated using Vulcan Logic Dumper, using php 8.5.0


preferences:
127.25 ms | 480 KiB | 9 Q