3v4l.org

run code in 300+ 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.0.0


preferences:
141.7 ms | 1006 KiB | 17 Q