3v4l.org

run code in 500+ PHP versions simultaneously
<?php register_shutdown_function(function () { $error = error_get_last(); if ($error !== null) { throw new ErrorException($error['message'], 0, $error['type'], $error['file'], $error['line']); } }); try { ini_set('memory_limit',1); $a = range(1,100000); } catch (Throwable $e) { echo "Caught: ".$e; }
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 17
Branch analysis from position: 17
1 jumps found. (Code = 62) Position 1 = -2
Found catch point at position: 14
Branch analysis from position: 14
2 jumps found. (Code = 107) Position 1 = 15, Position 2 = -2
Branch analysis from position: 15
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/AQWMC
function name:  (null)
number of ops:  18
compiled vars:  !0 = $a, !1 = $e
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
    3     0  E >   INIT_FCALL                                                   'register_shutdown_function'
          1        DECLARE_LAMBDA_FUNCTION                              ~2      [0]
    9     2        SEND_VAL                                                     ~2
    3     3        DO_ICALL                                                     
   12     4        INIT_FCALL                                                   'ini_set'
          5        SEND_VAL                                                     'memory_limit'
          6        SEND_VAL                                                     1
          7        DO_ICALL                                                     
   13     8        INIT_FCALL                                                   'range'
          9        SEND_VAL                                                     1
         10        SEND_VAL                                                     100000
         11        DO_ICALL                                             $5      
         12        ASSIGN                                                       !0, $5
         13      > JMP                                                          ->17
   14    14  E > > CATCH                                           last         'Throwable'
   15    15    >   CONCAT                                               ~7      'Caught%3A+', !1
         16        ECHO                                                         ~7
   16    17    > > RETURN                                                       1


Dynamic Functions:
Dynamic Function 0
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 5, Position 2 = 21
Branch analysis from position: 5
1 jumps found. (Code = 108) Position 1 = -2
Branch analysis from position: 21
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/AQWMC
function name:  {closure:/in/AQWMC:3}
number of ops:  22
compiled vars:  !0 = $error
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
    5     0  E >   INIT_FCALL                                                   'error_get_last'
          1        DO_ICALL                                             $1      
          2        ASSIGN                                                       !0, $1
    6     3        TYPE_CHECK                                      1020          !0
          4      > JMPZ                                                         ~3, ->21
    7     5    >   NEW                                                  $4      'ErrorException'
          6        CHECK_FUNC_ARG                                               
          7        FETCH_DIM_FUNC_ARG                                   $5      !0, 'message'
          8        SEND_FUNC_ARG                                                $5
          9        SEND_VAL_EX                                                  0
         10        CHECK_FUNC_ARG                                               
         11        FETCH_DIM_FUNC_ARG                                   $6      !0, 'type'
         12        SEND_FUNC_ARG                                                $6
         13        CHECK_FUNC_ARG                                               
         14        FETCH_DIM_FUNC_ARG                                   $7      !0, 'file'
         15        SEND_FUNC_ARG                                                $7
         16        CHECK_FUNC_ARG                                               
         17        FETCH_DIM_FUNC_ARG                                   $8      !0, 'line'
         18        SEND_FUNC_ARG                                                $8
         19        DO_FCALL                                          0          
         20      > THROW                                             0          $4
    9    21    > > RETURN                                                       null

End of Dynamic Function 0

Generated using Vulcan Logic Dumper, using php 8.5.0


preferences:
156.65 ms | 2314 KiB | 17 Q