3v4l.org

run code in 300+ PHP versions simultaneously
<?php $pointsNo = 190; // e.g count($coordsX) == 190; $maxPolyPoints = 120; $idxRatio = round($pointsNo/$maxPolyPoints); $idx = 0; $i = 0; while ($idx<$pointsNo){ //$newX[$i] = $coordsX[$idx]; //$newY[$i] = $coordsY[$idx]; $idx += $idxRatio; $i++; } echo "existing: ".$i; echo "<br>"; $idxRatio = $pointsNo/$maxPolyPoints; $idx = 0; $i = 0; while (ceil($idx)<$pointsNo){ //$newX[$i] = $coordsX[round($idx)]; //$newY[$i] = $coordsY[round($idx)]; $idx += $idxRatio; $i++; } echo "improved: ".$i;
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 12
Branch analysis from position: 12
2 jumps found. (Code = 44) Position 1 = 14, Position 2 = 10
Branch analysis from position: 14
1 jumps found. (Code = 42) Position 1 = 24
Branch analysis from position: 24
2 jumps found. (Code = 44) Position 1 = 29, Position 2 = 22
Branch analysis from position: 29
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 22
2 jumps found. (Code = 44) Position 1 = 29, Position 2 = 22
Branch analysis from position: 29
Branch analysis from position: 22
Branch analysis from position: 10
2 jumps found. (Code = 44) Position 1 = 14, Position 2 = 10
Branch analysis from position: 14
Branch analysis from position: 10
filename:       /in/XHEEQ
function name:  (null)
number of ops:  32
compiled vars:  !0 = $pointsNo, !1 = $maxPolyPoints, !2 = $idxRatio, !3 = $idx, !4 = $i
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ASSIGN                                                   !0, 190
    3     1        ASSIGN                                                   !1, 120
    5     2        INIT_FCALL                                               'round'
          3        DIV                                              ~7      !0, !1
          4        SEND_VAL                                                 ~7
          5        DO_ICALL                                         $8      
          6        ASSIGN                                                   !2, $8
    6     7        ASSIGN                                                   !3, 0
    7     8        ASSIGN                                                   !4, 0
    8     9      > JMP                                                      ->12
   11    10    >   ASSIGN_OP                                     1          !3, !2
   12    11        PRE_INC                                                  !4
    8    12    >   IS_SMALLER                                               !3, !0
         13      > JMPNZ                                                    ~14, ->10
   14    14    >   CONCAT                                           ~15     'existing%3A+', !4
         15        ECHO                                                     ~15
   16    16        ECHO                                                     '%3Cbr%3E'
   18    17        DIV                                              ~16     !0, !1
         18        ASSIGN                                                   !2, ~16
   19    19        ASSIGN                                                   !3, 0
   20    20        ASSIGN                                                   !4, 0
   21    21      > JMP                                                      ->24
   24    22    >   ASSIGN_OP                                     1          !3, !2
   25    23        PRE_INC                                                  !4
   21    24    >   INIT_FCALL                                               'ceil'
         25        SEND_VAR                                                 !3
         26        DO_ICALL                                         $22     
         27        IS_SMALLER                                               $22, !0
         28      > JMPNZ                                                    ~23, ->22
   27    29    >   CONCAT                                           ~24     'improved%3A+', !4
         30        ECHO                                                     ~24
         31      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
156.08 ms | 1396 KiB | 17 Q