3v4l.org

run code in 300+ PHP versions simultaneously
<?php declare(strict_types=1); $ini = <<<INI NUMBER = 1 TEXT = "1" DEFINED_INTEGER_CONSTANT = FOO DEFINED_BOOLEAN_CONSTANT = BAR UNDEFINED_CONSTANT = BAZ INI; define("FOO", 123); define("BAR", true); $ini_file = parse_ini_string($ini, false, INI_SCANNER_TYPED); foreach($ini_file as $key => $value) { define($key, $value); } var_dump(NUMBER); // => int(1) var_dump(TEXT); // => string(1) "1" var_dump(DEFINED_INTEGER_CONSTANT); // => string(3) "123" var_dump(DEFINED_BOOLEAN_CONSTANT); // => "1" var_dump(UNDEFINED_CONSTANT); // => "BAZ"
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 16, Position 2 = 23
Branch analysis from position: 16
2 jumps found. (Code = 78) Position 1 = 17, Position 2 = 23
Branch analysis from position: 17
1 jumps found. (Code = 42) Position 1 = 16
Branch analysis from position: 16
Branch analysis from position: 23
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 23
filename:       /in/DbEYV
function name:  (null)
number of ops:  45
compiled vars:  !0 = $ini, !1 = $ini_file, !2 = $value, !3 = $key
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    4     0  E >   ASSIGN                                                   !0, 'NUMBER+%3D+1%0ATEXT+%3D+%221%22%0ADEFINED_INTEGER_CONSTANT+%3D+FOO%0ADEFINED_BOOLEAN_CONSTANT+%3D+BAR%0AUNDEFINED_CONSTANT+%3D+BAZ'
   12     1        INIT_FCALL                                               'define'
          2        SEND_VAL                                                 'FOO'
          3        SEND_VAL                                                 123
          4        DO_ICALL                                                 
   13     5        INIT_FCALL                                               'define'
          6        SEND_VAL                                                 'BAR'
          7        SEND_VAL                                                 <true>
          8        DO_ICALL                                                 
   15     9        INIT_FCALL                                               'parse_ini_string'
         10        SEND_VAR                                                 !0
         11        SEND_VAL                                                 <false>
         12        SEND_VAL                                                 2
         13        DO_ICALL                                         $7      
         14        ASSIGN                                                   !1, $7
   17    15      > FE_RESET_R                                       $9      !1, ->23
         16    > > FE_FETCH_R                                       ~10     $9, !2, ->23
         17    >   ASSIGN                                                   !3, ~10
   18    18        INIT_FCALL                                               'define'
         19        SEND_VAR                                                 !3
         20        SEND_VAR                                                 !2
         21        DO_ICALL                                                 
   17    22      > JMP                                                      ->16
         23    >   FE_FREE                                                  $9
   21    24        INIT_FCALL                                               'var_dump'
         25        FETCH_CONSTANT                                   ~13     'NUMBER'
         26        SEND_VAL                                                 ~13
         27        DO_ICALL                                                 
   22    28        INIT_FCALL                                               'var_dump'
         29        FETCH_CONSTANT                                   ~15     'TEXT'
         30        SEND_VAL                                                 ~15
         31        DO_ICALL                                                 
   23    32        INIT_FCALL                                               'var_dump'
         33        FETCH_CONSTANT                                   ~17     'DEFINED_INTEGER_CONSTANT'
         34        SEND_VAL                                                 ~17
         35        DO_ICALL                                                 
   24    36        INIT_FCALL                                               'var_dump'
         37        FETCH_CONSTANT                                   ~19     'DEFINED_BOOLEAN_CONSTANT'
         38        SEND_VAL                                                 ~19
         39        DO_ICALL                                                 
   25    40        INIT_FCALL                                               'var_dump'
         41        FETCH_CONSTANT                                   ~21     'UNDEFINED_CONSTANT'
         42        SEND_VAL                                                 ~21
         43        DO_ICALL                                                 
         44      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
149.88 ms | 1400 KiB | 19 Q