3v4l.org

run code in 500+ PHP versions simultaneously
<?php echo 'Initial settings:'.PHP_EOL; echo 'zend.assertions: '.ini_get('zend.assertions').PHP_EOL; echo 'assert.active: '.ini_get('assert.active').PHP_EOL; ini_set('zend.assertions', 0); assert_options(ASSERT_ACTIVE, 0); echo 'After altering settings:'.PHP_EOL; echo 'zend.assertions: '.ini_get('zend.assertions').PHP_EOL; echo 'assert.active: '.ini_get('assert.active').PHP_EOL; $assert = false; assert($assert = true); if($assert) echo 'Code in assert() was evaluated'.PHP_EOL; else echo 'Code in assert() was NOT evaluated'.PHP_EOL;
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 43, Position 2 = 45
Branch analysis from position: 43
1 jumps found. (Code = 42) Position 1 = 46
Branch analysis from position: 46
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 45
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/EYrTO
function name:  (null)
number of ops:  47
compiled vars:  !0 = $assert
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
    3     0  E >   ECHO                                                         'Initial+settings%3A%0A'
    4     1        INIT_FCALL                                                   'ini_get'
          2        SEND_VAL                                                     'zend.assertions'
          3        DO_ICALL                                             $1      
          4        CONCAT                                               ~2      'zend.assertions%3A+', $1
          5        CONCAT                                               ~3      ~2, '%0A'
          6        ECHO                                                         ~3
    5     7        INIT_FCALL                                                   'ini_get'
          8        SEND_VAL                                                     'assert.active'
          9        DO_ICALL                                             $4      
         10        CONCAT                                               ~5      'assert.active%3A+', $4
         11        CONCAT                                               ~6      ~5, '%0A'
         12        ECHO                                                         ~6
    7    13        INIT_FCALL                                                   'ini_set'
         14        SEND_VAL                                                     'zend.assertions'
         15        SEND_VAL                                                     0
         16        DO_ICALL                                                     
    8    17        INIT_FCALL                                                   'assert_options'
         18        FETCH_CONSTANT                                       ~8      'ASSERT_ACTIVE'
         19        SEND_VAL                                                     ~8
         20        SEND_VAL                                                     0
         21        DO_FCALL_BY_NAME                                             
   10    22        ECHO                                                         'After+altering+settings%3A%0A'
   11    23        INIT_FCALL                                                   'ini_get'
         24        SEND_VAL                                                     'zend.assertions'
         25        DO_ICALL                                             $10     
         26        CONCAT                                               ~11     'zend.assertions%3A+', $10
         27        CONCAT                                               ~12     ~11, '%0A'
         28        ECHO                                                         ~12
   12    29        INIT_FCALL                                                   'ini_get'
         30        SEND_VAL                                                     'assert.active'
         31        DO_ICALL                                             $13     
         32        CONCAT                                               ~14     'assert.active%3A+', $13
         33        CONCAT                                               ~15     ~14, '%0A'
         34        ECHO                                                         ~15
   14    35        ASSIGN                                                       !0, <false>
   15    36        ASSERT_CHECK                                                 
         37        INIT_FCALL                                                   'assert'
         38        ASSIGN                                               ~17     !0, <true>
         39        SEND_VAL                                                     ~17
         40        SEND_VAL                                                     'assert%28%24assert+%3D+true%29'
         41        DO_ICALL                                                     
   17    42      > JMPZ                                                         !0, ->45
   18    43    >   ECHO                                                         'Code+in+assert%28%29+was+evaluated%0A'
   17    44      > JMP                                                          ->46
   20    45    >   ECHO                                                         'Code+in+assert%28%29+was+NOT+evaluated%0A'
         46    > > RETURN                                                       1

Generated using Vulcan Logic Dumper, using php 8.5.0


preferences:
222.78 ms | 2625 KiB | 17 Q