3v4l.org

run code in 300+ PHP versions simultaneously
<?php function default_error_handler($errorNumber, $message, $errfile, $errline){ var_dump($errorNumber, $message, $errfile, $errline, error_get_last()); echo "\r\n /default_error_handler"; } function unexpected_shutdown_handler(){ var_dump(error_get_last()); echo "\r\n /unexpected_shutdown_handler"; } set_error_handler('default_error_handler'); register_shutdown_function('unexpected_shutdown_handler'); try{ $a=new Fi(); }catch(Exception $e){ echo "\r\n catch Exception"; var_dump($e); } echo "\r\n end"; ?>
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 15
Branch analysis from position: 15
1 jumps found. (Code = 62) Position 1 = -2
Found catch point at position: 10
Branch analysis from position: 10
2 jumps found. (Code = 107) Position 1 = 11, Position 2 = -2
Branch analysis from position: 11
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/Zp645
function name:  (null)
number of ops:  17
compiled vars:  !0 = $a, !1 = $e
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   11     0  E >   INIT_FCALL                                               'set_error_handler'
          1        SEND_VAL                                                 'default_error_handler'
          2        DO_ICALL                                                 
   12     3        INIT_FCALL                                               'register_shutdown_function'
          4        SEND_VAL                                                 'unexpected_shutdown_handler'
          5        DO_ICALL                                                 
   14     6        NEW                                              $4      'Fi'
          7        DO_FCALL                                      0          
          8        ASSIGN                                                   !0, $4
          9      > JMP                                                      ->15
   15    10  E > > CATCH                                       last         'Exception'
   16    11    >   ECHO                                                     '%0D%0A+catch+Exception'
   17    12        INIT_FCALL                                               'var_dump'
         13        SEND_VAR                                                 !1
         14        DO_ICALL                                                 
   19    15    >   ECHO                                                     '%0D%0A+end'
   20    16      > RETURN                                                   1

Function default_error_handler:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/Zp645
function name:  default_error_handler
number of ops:  15
compiled vars:  !0 = $errorNumber, !1 = $message, !2 = $errfile, !3 = $errline
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   RECV                                             !0      
          1        RECV                                             !1      
          2        RECV                                             !2      
          3        RECV                                             !3      
    3     4        INIT_FCALL                                               'var_dump'
          5        SEND_VAR                                                 !0
          6        SEND_VAR                                                 !1
          7        SEND_VAR                                                 !2
          8        SEND_VAR                                                 !3
          9        INIT_FCALL                                               'error_get_last'
         10        DO_ICALL                                         $4      
         11        SEND_VAR                                                 $4
         12        DO_ICALL                                                 
    4    13        ECHO                                                     '%0D%0A+%2Fdefault_error_handler'
    5    14      > RETURN                                                   null

End of function default_error_handler

Function unexpected_shutdown_handler:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/Zp645
function name:  unexpected_shutdown_handler
number of ops:  7
compiled vars:  none
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    7     0  E >   INIT_FCALL                                               'var_dump'
          1        INIT_FCALL                                               'error_get_last'
          2        DO_ICALL                                         $0      
          3        SEND_VAR                                                 $0
          4        DO_ICALL                                                 
    8     5        ECHO                                                     '%0D%0A+%2Funexpected_shutdown_handler'
    9     6      > RETURN                                                   null

End of function unexpected_shutdown_handler

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
153.42 ms | 1405 KiB | 21 Q