3v4l.org

run code in 300+ PHP versions simultaneously
<?php $nullvar = null; $nullstr = ''; $notnull = 'foo'; $unset = 'something'; unset($unset); function quiet_dump($v) { ob_start(); var_dump($v); return ob_get_clean(); } $results = array( '==Results==' , '$nullvar = ' . quiet_dump(isset($nullvar), true) , '$nullstr = ' . quiet_dump(isset($nullstr), true) , '$notnull = ' . quiet_dump(isset($notnull), true) , '$unset = ' . quiet_dump(isset($unset), true) ); echo implode(" ",$results);
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/AiMrO
function name:  (null)
number of ops:  41
compiled vars:  !0 = $nullvar, !1 = $nullstr, !2 = $notnull, !3 = $unset, !4 = $results
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ASSIGN                                                   !0, null
    3     1        ASSIGN                                                   !1, ''
    4     2        ASSIGN                                                   !2, 'foo'
    5     3        ASSIGN                                                   !3, 'something'
    6     4        UNSET_CV                                                 !3
   15     5        INIT_ARRAY                                       ~9      '%3D%3DResults%3D%3D'
   16     6        INIT_FCALL                                               'quiet_dump'
          7        ISSET_ISEMPTY_CV                                 ~10     !0
          8        SEND_VAL                                                 ~10
          9        SEND_VAL                                                 <true>
         10        DO_FCALL                                      0  $11     
         11        CONCAT                                           ~12     '%24nullvar+%3D+', $11
         12        ADD_ARRAY_ELEMENT                                ~9      ~12
   17    13        INIT_FCALL                                               'quiet_dump'
         14        ISSET_ISEMPTY_CV                                 ~13     !1
         15        SEND_VAL                                                 ~13
         16        SEND_VAL                                                 <true>
         17        DO_FCALL                                      0  $14     
         18        CONCAT                                           ~15     '%24nullstr+%3D+', $14
         19        ADD_ARRAY_ELEMENT                                ~9      ~15
   18    20        INIT_FCALL                                               'quiet_dump'
         21        ISSET_ISEMPTY_CV                                 ~16     !2
         22        SEND_VAL                                                 ~16
         23        SEND_VAL                                                 <true>
         24        DO_FCALL                                      0  $17     
         25        CONCAT                                           ~18     '%24notnull+%3D+', $17
         26        ADD_ARRAY_ELEMENT                                ~9      ~18
   19    27        INIT_FCALL                                               'quiet_dump'
         28        ISSET_ISEMPTY_CV                                 ~19     !3
         29        SEND_VAL                                                 ~19
         30        SEND_VAL                                                 <true>
         31        DO_FCALL                                      0  $20     
         32        CONCAT                                           ~21     '%24unset+%3D+', $20
         33        ADD_ARRAY_ELEMENT                                ~9      ~21
   15    34        ASSIGN                                                   !4, ~9
   22    35        INIT_FCALL                                               'implode'
         36        SEND_VAL                                                 '+'
         37        SEND_VAR                                                 !4
         38        DO_ICALL                                         $23     
         39        ECHO                                                     $23
         40      > RETURN                                                   1

Function quiet_dump:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/AiMrO
function name:  quiet_dump
number of ops:  10
compiled vars:  !0 = $v
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    8     0  E >   RECV                                             !0      
   10     1        INIT_FCALL                                               'ob_start'
          2        DO_ICALL                                                 
   11     3        INIT_FCALL                                               'var_dump'
          4        SEND_VAR                                                 !0
          5        DO_ICALL                                                 
   12     6        INIT_FCALL                                               'ob_get_clean'
          7        DO_ICALL                                         $3      
          8      > RETURN                                                   $3
   13     9*     > RETURN                                                   null

End of function quiet_dump

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
257.73 ms | 1403 KiB | 26 Q