3v4l.org

run code in 500+ PHP versions simultaneously
<?php $float = 1.223; $float2 = 789.012; $prefix = ' World67'; echo round($float, 2). ' Hello ' . (int) $float . substr($prefix, 0, 6) . substr($prefix, 0, 6); echo \PHP_EOL; echo round($float2, 2). ' Hello ' . (int) $float2 . substr($prefix, 0, 6) . substr($prefix, 0, 6); echo \PHP_EOL . '---' . \PHP_EOL; $pattern = '%1$.2f Hello %1$.d %2$.6s'; printf($pattern, $float, $prefix); echo \PHP_EOL; printf($pattern, $float2, $prefix); echo \PHP_EOL; //purposefully error printf($pattern, $prefix);
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/8PWil
function name:  (null)
number of ops:  51
compiled vars:  !0 = $float, !1 = $float2, !2 = $prefix, !3 = $pattern
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                       !0, 1.223
    4     1        ASSIGN                                                       !1, 789.012
    5     2        ASSIGN                                                       !2, '+World67'
    6     3        INIT_FCALL                                                   'round'
          4        SEND_VAR                                                     !0
          5        SEND_VAL                                                     2
          6        DO_ICALL                                             $7      
          7        CONCAT                                               ~8      $7, '+Hello+'
          8        CAST                                              4  ~9      !0
          9        CONCAT                                               ~10     ~8, ~9
         10        FRAMELESS_ICALL_3                substr              ~11     !2, 0
         11        OP_DATA                                                      6
         12        CONCAT                                               ~12     ~10, ~11
         13        FRAMELESS_ICALL_3                substr              ~13     !2, 0
         14        OP_DATA                                                      6
         15        CONCAT                                               ~14     ~12, ~13
         16        ECHO                                                         ~14
    7    17        ECHO                                                         '%0A'
    8    18        INIT_FCALL                                                   'round'
         19        SEND_VAR                                                     !1
         20        SEND_VAL                                                     2
         21        DO_ICALL                                             $15     
         22        CONCAT                                               ~16     $15, '+Hello+'
         23        CAST                                              4  ~17     !1
         24        CONCAT                                               ~18     ~16, ~17
         25        FRAMELESS_ICALL_3                substr              ~19     !2, 0
         26        OP_DATA                                                      6
         27        CONCAT                                               ~20     ~18, ~19
         28        FRAMELESS_ICALL_3                substr              ~21     !2, 0
         29        OP_DATA                                                      6
         30        CONCAT                                               ~22     ~20, ~21
         31        ECHO                                                         ~22
    9    32        ECHO                                                         '%0A---%0A'
   10    33        ASSIGN                                                       !3, '%251%24.2f+Hello+%251%24.d+%252%24.6s'
   11    34        INIT_FCALL                                                   'printf'
         35        SEND_VAR                                                     !3
         36        SEND_VAR                                                     !0
         37        SEND_VAR                                                     !2
         38        DO_ICALL                                                     
   12    39        ECHO                                                         '%0A'
   13    40        INIT_FCALL                                                   'printf'
         41        SEND_VAR                                                     !3
         42        SEND_VAR                                                     !1
         43        SEND_VAR                                                     !2
         44        DO_ICALL                                                     
   14    45        ECHO                                                         '%0A'
   16    46        INIT_FCALL                                                   'printf'
         47        SEND_VAR                                                     !3
         48        SEND_VAR                                                     !2
         49        DO_ICALL                                                     
         50      > RETURN                                                       1

Generated using Vulcan Logic Dumper, using php 8.5.0


preferences:
168.6 ms | 2266 KiB | 17 Q