3v4l.org

run code in 300+ PHP versions simultaneously
<?php namespace teachme; ApiError(123, "Fuck"); function ApiError($ErrorCode, $ErrorMsg) { header("X-API-Status: ".$ErrorCode." ".$ErrorMsg); if($ErrorCode != 40000) { $Message = $ErrorCode." ".$ErrorMsg."" . " - [".$_SERVER["HTTP-USER-AGENT"]."]" . " - [".$_SERVER["REMOTE_ADDR"]."]" . " - (User: ".(($_SESSION["TeachMe-Server"]["loggedin"] === true) ? $_SESSION["TeachMe-Server"]["User"]["ID"] : "<none>").")"; error_log($Message, 3, '../data/api_error.log'); } die(); }
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/3Q1Fr
function name:  (null)
number of ops:  5
compiled vars:  none
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   INIT_NS_FCALL_BY_NAME                                    'teachme%5CApiError'
          1        SEND_VAL_EX                                              123
          2        SEND_VAL_EX                                              'Fuck'
          3        DO_FCALL                                      0          
   17     4      > RETURN                                                   1

Function teachme%5Capierror:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 10, Position 2 = 44
Branch analysis from position: 10
2 jumps found. (Code = 43) Position 1 = 29, Position 2 = 35
Branch analysis from position: 29
1 jumps found. (Code = 42) Position 1 = 36
Branch analysis from position: 36
1 jumps found. (Code = 79) Position 1 = -2
Branch analysis from position: 35
1 jumps found. (Code = 79) Position 1 = -2
Branch analysis from position: 44
filename:       /in/3Q1Fr
function name:  teachme\ApiError
number of ops:  46
compiled vars:  !0 = $ErrorCode, !1 = $ErrorMsg, !2 = $Message
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    4     0  E >   RECV                                             !0      
          1        RECV                                             !1      
    6     2        INIT_NS_FCALL_BY_NAME                                    'teachme%5Cheader'
          3        CONCAT                                           ~3      'X-API-Status%3A+', !0
          4        CONCAT                                           ~4      ~3, '+'
          5        CONCAT                                           ~5      ~4, !1
          6        SEND_VAL_EX                                              ~5
          7        DO_FCALL                                      0          
    8     8        IS_NOT_EQUAL                                             !0, 40000
          9      > JMPZ                                                     ~7, ->44
   10    10    >   CONCAT                                           ~8      !0, '+'
         11        CONCAT                                           ~9      ~8, !1
         12        CONCAT                                           ~10     ~9, ''
   11    13        CONCAT                                           ~11     ~10, '+-+%5B'
         14        FETCH_R                      global              ~12     '_SERVER'
         15        FETCH_DIM_R                                      ~13     ~12, 'HTTP-USER-AGENT'
         16        CONCAT                                           ~14     ~11, ~13
         17        CONCAT                                           ~15     ~14, '%5D'
   12    18        CONCAT                                           ~16     ~15, '+-+%5B'
         19        FETCH_R                      global              ~17     '_SERVER'
         20        FETCH_DIM_R                                      ~18     ~17, 'REMOTE_ADDR'
         21        CONCAT                                           ~19     ~16, ~18
         22        CONCAT                                           ~20     ~19, '%5D'
   13    23        CONCAT                                           ~21     ~20, '+-+%28User%3A+'
         24        FETCH_R                      global              ~22     '_SESSION'
         25        FETCH_DIM_R                                      ~23     ~22, 'TeachMe-Server'
         26        FETCH_DIM_R                                      ~24     ~23, 'loggedin'
         27        TYPE_CHECK                                    8          ~24
         28      > JMPZ                                                     ~25, ->35
         29    >   FETCH_R                      global              ~26     '_SESSION'
         30        FETCH_DIM_R                                      ~27     ~26, 'TeachMe-Server'
         31        FETCH_DIM_R                                      ~28     ~27, 'User'
         32        FETCH_DIM_R                                      ~29     ~28, 'ID'
         33        QM_ASSIGN                                        ~30     ~29
         34      > JMP                                                      ->36
         35    >   QM_ASSIGN                                        ~30     '%3Cnone%3E'
         36    >   CONCAT                                           ~31     ~21, ~30
         37        CONCAT                                           ~32     ~31, '%29'
   10    38        ASSIGN                                                   !2, ~32
   14    39        INIT_NS_FCALL_BY_NAME                                    'teachme%5Cerror_log'
         40        SEND_VAR_EX                                              !2
         41        SEND_VAL_EX                                              3
         42        SEND_VAL_EX                                              '..%2Fdata%2Fapi_error.log'
         43        DO_FCALL                                      0          
   16    44    > > EXIT                                                     
   17    45*     > RETURN                                                   null

End of function teachme%5Capierror

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
156.58 ms | 1403 KiB | 18 Q