3v4l.org

run code in 500+ PHP versions simultaneously
<?php $array = new \ArrayObject(range(1,300000)); $iterator = $array->getIterator(); $copy = array_keys($array->getArrayCopy()); $item = end($copy); var_dump($array[$item]);
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/IaEMM
function name:  (null)
number of ops:  26
compiled vars:  !0 = $array, !1 = $iterator, !2 = $copy, !3 = $item
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
    3     0  E >   NEW                                                  $4      'ArrayObject'
          1        INIT_FCALL                                                   'range'
          2        SEND_VAL                                                     1
          3        SEND_VAL                                                     300000
          4        DO_ICALL                                             $5      
          5        SEND_VAR_NO_REF_EX                                           $5
          6        DO_FCALL                                          0          
          7        ASSIGN                                                       !0, $4
    4     8        INIT_METHOD_CALL                                             !0, 'getIterator'
          9        DO_FCALL                                          0  $8      
         10        ASSIGN                                                       !1, $8
    6    11        INIT_FCALL                                                   'array_keys'
         12        INIT_METHOD_CALL                                             !0, 'getArrayCopy'
         13        DO_FCALL                                          0  $10     
         14        SEND_VAR                                                     $10
         15        DO_ICALL                                             $11     
         16        ASSIGN                                                       !2, $11
    7    17        INIT_FCALL                                                   'end'
         18        SEND_REF                                                     !2
         19        DO_ICALL                                             $13     
         20        ASSIGN                                                       !3, $13
    8    21        INIT_FCALL                                                   'var_dump'
         22        FETCH_DIM_R                                          ~15     !0, !3
         23        SEND_VAL                                                     ~15
         24        DO_ICALL                                                     
         25      > RETURN                                                       1

Generated using Vulcan Logic Dumper, using php 8.5.0


preferences:
162.06 ms | 2090 KiB | 17 Q