3v4l.org

run code in 500+ PHP versions simultaneously
<?php declare(strict_types=1); enum MyBackedEnum: int { case One = 1; } try { MyBackedEnum::from('1'); } catch (Throwable $exception) { echo $exception->getMessage(), PHP_EOL; } echo (new ReflectionProperty(MyBackedEnum::class, 'value'))->getType(), PHP_EOL; echo (new ReflectionParameter([MyBackedEnum::class, 'from'], 'value'))->getType(), PHP_EOL; echo (new ReflectionParameter([MyBackedEnum::class, 'tryFrom'], 'value'))->getType(), PHP_EOL;
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 10
Branch analysis from position: 10
1 jumps found. (Code = 62) Position 1 = -2
Found catch point at position: 5
Branch analysis from position: 5
2 jumps found. (Code = 107) Position 1 = 6, Position 2 = -2
Branch analysis from position: 6
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/WkLXe
function name:  (null)
number of ops:  35
compiled vars:  !0 = $exception
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
    5     0  E >   DECLARE_CLASS                                                'mybackedenum'
   11     1        INIT_STATIC_METHOD_CALL                                      'MyBackedEnum', 'from'
          2        SEND_VAL_EX                                                  '1'
          3        DO_FCALL                                          0          
          4      > JMP                                                          ->10
   12     5  E > > CATCH                                           last         'Throwable'
   13     6    >   INIT_METHOD_CALL                                             !0, 'getMessage'
          7        DO_FCALL                                          0  $2      
          8        ECHO                                                         $2
          9        ECHO                                                         '%0A'
   16    10    >   NEW                                                  $3      'ReflectionProperty'
         11        SEND_VAL_EX                                                  'MyBackedEnum'
         12        SEND_VAL_EX                                                  'value'
         13        DO_FCALL                                          0          
         14        INIT_METHOD_CALL                                             $3, 'getType'
         15        DO_FCALL                                          0  $5      
         16        ECHO                                                         $5
         17        ECHO                                                         '%0A'
   17    18        NEW                                                  $6      'ReflectionParameter'
         19        SEND_VAL_EX                                                  <array>
         20        SEND_VAL_EX                                                  'value'
         21        DO_FCALL                                          0          
         22        INIT_METHOD_CALL                                             $6, 'getType'
         23        DO_FCALL                                          0  $8      
         24        ECHO                                                         $8
         25        ECHO                                                         '%0A'
   18    26        NEW                                                  $9      'ReflectionParameter'
         27        SEND_VAL_EX                                                  <array>
         28        SEND_VAL_EX                                                  'value'
         29        DO_FCALL                                          0          
         30        INIT_METHOD_CALL                                             $9, 'getType'
         31        DO_FCALL                                          0  $11     
         32        ECHO                                                         $11
         33        ECHO                                                         '%0A'
   19    34      > RETURN                                                       1

Class MyBackedEnum: [no user functions]

Generated using Vulcan Logic Dumper, using php 8.5.0


preferences:
140.91 ms | 484 KiB | 9 Q