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("\n",$results);
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/brt2T
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        ADD_ARRAY_ELEMENT                                ~9      '%24nullvar+%3D+'
   17     7        INIT_FCALL                                               'quiet_dump'
          8        ISSET_ISEMPTY_CV                                 ~10     !0
          9        SEND_VAL                                                 ~10
         10        SEND_VAL                                                 <true>
         11        DO_FCALL                                      0  $11     
         12        ADD_ARRAY_ELEMENT                                ~9      $11
   18    13        ADD_ARRAY_ELEMENT                                ~9      '%24nullstr+%3D+'
   19    14        INIT_FCALL                                               'quiet_dump'
         15        ISSET_ISEMPTY_CV                                 ~12     !1
         16        SEND_VAL                                                 ~12
         17        SEND_VAL                                                 <true>
         18        DO_FCALL                                      0  $13     
         19        ADD_ARRAY_ELEMENT                                ~9      $13
   20    20        ADD_ARRAY_ELEMENT                                ~9      '%24notnull+%3D+'
   21    21        INIT_FCALL                                               'quiet_dump'
         22        ISSET_ISEMPTY_CV                                 ~14     !2
         23        SEND_VAL                                                 ~14
         24        SEND_VAL                                                 <true>
         25        DO_FCALL                                      0  $15     
         26        ADD_ARRAY_ELEMENT                                ~9      $15
   22    27        ADD_ARRAY_ELEMENT                                ~9      '%24unset+%3D+'
   23    28        INIT_FCALL                                               'quiet_dump'
         29        ISSET_ISEMPTY_CV                                 ~16     !3
         30        SEND_VAL                                                 ~16
         31        SEND_VAL                                                 <true>
         32        DO_FCALL                                      0  $17     
         33        ADD_ARRAY_ELEMENT                                ~9      $17
   15    34        ASSIGN                                                   !4, ~9
   26    35        INIT_FCALL                                               'implode'
         36        SEND_VAL                                                 '%0A'
         37        SEND_VAR                                                 !4
         38        DO_ICALL                                         $19     
         39        ECHO                                                     $19
         40      > RETURN                                                   1

Function quiet_dump:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/brt2T
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:
153.54 ms | 1403 KiB | 25 Q