3v4l.org

run code in 300+ PHP versions simultaneously
<?php echo "Example difference between PHP version compared to 8.4's new technique".PHP_EOL; echo "===================".PHP_EOL; echo round(33.324999999999996,2) . PHP_EOL; echo round(33.334999999999996,2) . PHP_EOL; echo round(33.344999999999996,2) . PHP_EOL; echo round(33.354999999999996,2) . PHP_EOL; echo round(33.364999999999996,2) . PHP_EOL; echo round(33.374999999999996,2) . PHP_EOL; echo round(33.384999999999996,2) . PHP_EOL; echo round(33.394999999999996,2) . PHP_EOL; echo PHP_EOL; echo " simple multiplication " . 25*1.333 .PHP_EOL; echo " rounding that same sum " . round((25*1.333),2) . PHP_EOL; echo " but wait, lets just round 33.325 => " . round(33.325,2) . PHP_EOL;
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/KWK15
function name:  (null)
number of ops:  67
compiled vars:  none
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   ECHO                                                     'Example+difference+between+PHP+version+compared+to+8.4%27s+new+technique%0A'
    4     1        ECHO                                                     '%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%0A'
    5     2        INIT_FCALL                                               'round'
          3        SEND_VAL                                                 33.325
          4        SEND_VAL                                                 2
          5        DO_ICALL                                         $0      
          6        CONCAT                                           ~1      $0, '%0A'
          7        ECHO                                                     ~1
    6     8        INIT_FCALL                                               'round'
          9        SEND_VAL                                                 33.335
         10        SEND_VAL                                                 2
         11        DO_ICALL                                         $2      
         12        CONCAT                                           ~3      $2, '%0A'
         13        ECHO                                                     ~3
    7    14        INIT_FCALL                                               'round'
         15        SEND_VAL                                                 33.345
         16        SEND_VAL                                                 2
         17        DO_ICALL                                         $4      
         18        CONCAT                                           ~5      $4, '%0A'
         19        ECHO                                                     ~5
    8    20        INIT_FCALL                                               'round'
         21        SEND_VAL                                                 33.355
         22        SEND_VAL                                                 2
         23        DO_ICALL                                         $6      
         24        CONCAT                                           ~7      $6, '%0A'
         25        ECHO                                                     ~7
    9    26        INIT_FCALL                                               'round'
         27        SEND_VAL                                                 33.365
         28        SEND_VAL                                                 2
         29        DO_ICALL                                         $8      
         30        CONCAT                                           ~9      $8, '%0A'
         31        ECHO                                                     ~9
   10    32        INIT_FCALL                                               'round'
         33        SEND_VAL                                                 33.375
         34        SEND_VAL                                                 2
         35        DO_ICALL                                         $10     
         36        CONCAT                                           ~11     $10, '%0A'
         37        ECHO                                                     ~11
   11    38        INIT_FCALL                                               'round'
         39        SEND_VAL                                                 33.385
         40        SEND_VAL                                                 2
         41        DO_ICALL                                         $12     
         42        CONCAT                                           ~13     $12, '%0A'
         43        ECHO                                                     ~13
   12    44        INIT_FCALL                                               'round'
         45        SEND_VAL                                                 33.395
         46        SEND_VAL                                                 2
         47        DO_ICALL                                         $14     
         48        CONCAT                                           ~15     $14, '%0A'
         49        ECHO                                                     ~15
   14    50        ECHO                                                     '%0A'
   16    51        ECHO                                                     '+simple+multiplication+33.325%0A'
   17    52        INIT_FCALL                                               'round'
         53        SEND_VAL                                                 33.325
         54        SEND_VAL                                                 2
         55        DO_ICALL                                         $16     
         56        CONCAT                                           ~17     '+rounding+that+same+sum+', $16
         57        CONCAT                                           ~18     ~17, '%0A'
         58        ECHO                                                     ~18
   18    59        INIT_FCALL                                               'round'
         60        SEND_VAL                                                 33.325
         61        SEND_VAL                                                 2
         62        DO_ICALL                                         $19     
         63        CONCAT                                           ~20     '+but+wait%2C+lets+just+round+33.325+%3D%3E+', $19
         64        CONCAT                                           ~21     ~20, '%0A'
         65        ECHO                                                     ~21
   19    66      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
142.4 ms | 1005 KiB | 14 Q