3v4l.org

run code in 500+ 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.5.0


preferences:
152.57 ms | 1661 KiB | 11 Q