3v4l.org

run code in 300+ PHP versions simultaneously
<?php $i256 = str_replace(',', '', '115,792,089,237,316,195,423,570,985,008,687,907,853,269,984,665,640,564,039,457,584,007,913,129,639,936'); error_reporting((int) $i256); $t = true; ob_start(); session_name(urlencode('a[b]')); session_start(); ob_end_clean(); if(isset($_SESSION['hi'])) { $t = false; } $text = ini_get('session.save_path') . '/sess_' . $_COOKIE['a']['b']; function get_include_contents($filename) { //if (is_file($filename)) { ob_start(); include $filename; $var = ob_get_contents(); ob_end_clean(); return $var; //} return false; } $string = get_include_contents($text); $_SESSION['hi'] = 'user2'; var_dump($string); ?>
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 26, Position 2 = 27
Branch analysis from position: 26
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 27
filename:       /in/43Hl7
function name:  (null)
number of ops:  47
compiled vars:  !0 = $i256, !1 = $t, !2 = $text, !3 = $string
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   INIT_FCALL                                               'str_replace'
          1        SEND_VAL                                                 '%2C'
          2        SEND_VAL                                                 ''
          3        SEND_VAL                                                 '115%2C792%2C089%2C237%2C316%2C195%2C423%2C570%2C985%2C008%2C687%2C907%2C853%2C269%2C984%2C665%2C640%2C564%2C039%2C457%2C584%2C007%2C913%2C129%2C639%2C936'
          4        DO_ICALL                                         $4      
          5        ASSIGN                                                   !0, $4
    4     6        INIT_FCALL                                               'error_reporting'
          7        CAST                                          4  ~6      !0
          8        SEND_VAL                                                 ~6
          9        DO_ICALL                                                 
    5    10        ASSIGN                                                   !1, <true>
    6    11        INIT_FCALL                                               'ob_start'
         12        DO_ICALL                                                 
    7    13        INIT_FCALL                                               'session_name'
         14        INIT_FCALL                                               'urlencode'
         15        SEND_VAL                                                 'a%5Bb%5D'
         16        DO_ICALL                                         $10     
         17        SEND_VAR                                                 $10
         18        DO_ICALL                                                 
    8    19        INIT_FCALL                                               'session_start'
         20        DO_ICALL                                                 
    9    21        INIT_FCALL                                               'ob_end_clean'
         22        DO_ICALL                                                 
   10    23        FETCH_IS                                         ~14     '_SESSION'
         24        ISSET_ISEMPTY_DIM_OBJ                         0          ~14, 'hi'
         25      > JMPZ                                                     ~15, ->27
   11    26    >   ASSIGN                                                   !1, <false>
   13    27    >   INIT_FCALL                                               'ini_get'
         28        SEND_VAL                                                 'session.save_path'
         29        DO_ICALL                                         $17     
         30        CONCAT                                           ~18     $17, '%2Fsess_'
         31        FETCH_R                      global              ~19     '_COOKIE'
         32        FETCH_DIM_R                                      ~20     ~19, 'a'
         33        FETCH_DIM_R                                      ~21     ~20, 'b'
         34        CONCAT                                           ~22     ~18, ~21
         35        ASSIGN                                                   !2, ~22
   25    36        INIT_FCALL                                               'get_include_contents'
         37        SEND_VAR                                                 !2
         38        DO_FCALL                                      0  $24     
         39        ASSIGN                                                   !3, $24
   26    40        FETCH_W                      global              $26     '_SESSION'
         41        ASSIGN_DIM                                               $26, 'hi'
         42        OP_DATA                                                  'user2'
   27    43        INIT_FCALL                                               'var_dump'
         44        SEND_VAR                                                 !3
         45        DO_ICALL                                                 
   29    46      > RETURN                                                   1

Function get_include_contents:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/43Hl7
function name:  get_include_contents
number of ops:  12
compiled vars:  !0 = $filename, !1 = $var
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   15     0  E >   RECV                                             !0      
   17     1        INIT_FCALL                                               'ob_start'
          2        DO_ICALL                                                 
   18     3        INCLUDE_OR_EVAL                                          !0, INCLUDE
   19     4        INIT_FCALL                                               'ob_get_contents'
          5        DO_ICALL                                         $4      
          6        ASSIGN                                                   !1, $4
   20     7        INIT_FCALL                                               'ob_end_clean'
          8        DO_ICALL                                                 
   21     9      > RETURN                                                   !1
   23    10*       RETURN                                                   <false>
   24    11*     > RETURN                                                   null

End of function get_include_contents

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
206.76 ms | 1028 KiB | 24 Q