3v4l.org

run code in 300+ PHP versions simultaneously
<?php $counter = 0; while (true) { $counter++; if(($counter % 17) === 0) { $counterStr = "$counter"; $digSum = 0; for($i = 0; $i < strlen($counterStr); $i++) { $digSum = $digSum + (int) $counterStr[$i]; } if($digSum === 17 && $counterStr[strlen($counterStr) - 2] === "1" && $counterStr[strlen($counterStr) - 1] == "7" && $counter !== 917) { var_dump($counter); break; } } }
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 40
Branch analysis from position: 40
2 jumps found. (Code = 44) Position 1 = 41, Position 2 = 2
Branch analysis from position: 41
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 2
2 jumps found. (Code = 43) Position 1 = 6, Position 2 = 40
Branch analysis from position: 6
1 jumps found. (Code = 42) Position 1 = 16
Branch analysis from position: 16
2 jumps found. (Code = 44) Position 1 = 19, Position 2 = 11
Branch analysis from position: 19
2 jumps found. (Code = 46) Position 1 = 21, Position 2 = 26
Branch analysis from position: 21
2 jumps found. (Code = 46) Position 1 = 27, Position 2 = 32
Branch analysis from position: 27
2 jumps found. (Code = 46) Position 1 = 33, Position 2 = 35
Branch analysis from position: 33
2 jumps found. (Code = 43) Position 1 = 36, Position 2 = 40
Branch analysis from position: 36
1 jumps found. (Code = 42) Position 1 = 41
Branch analysis from position: 41
Branch analysis from position: 40
Branch analysis from position: 35
Branch analysis from position: 32
Branch analysis from position: 26
Branch analysis from position: 11
2 jumps found. (Code = 44) Position 1 = 19, Position 2 = 11
Branch analysis from position: 19
Branch analysis from position: 11
Branch analysis from position: 40
filename:       /in/vAqHj
function name:  (null)
number of ops:  42
compiled vars:  !0 = $counter, !1 = $counterStr, !2 = $digSum, !3 = $i
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                   !0, 0
    5     1      > JMP                                                      ->40
    6     2    >   PRE_INC                                                  !0
    7     3        MOD                                              ~6      !0, 17
          4        IS_IDENTICAL                                             ~6, 0
          5      > JMPZ                                                     ~7, ->40
    8     6    >   CAST                                          6  ~8      !0
          7        ASSIGN                                                   !1, ~8
    9     8        ASSIGN                                                   !2, 0
   10     9        ASSIGN                                                   !3, 0
         10      > JMP                                                      ->16
   11    11    >   FETCH_DIM_R                                      ~12     !1, !3
         12        CAST                                          4  ~13     ~12
         13        ADD                                              ~14     !2, ~13
         14        ASSIGN                                                   !2, ~14
   10    15        PRE_INC                                                  !3
         16    >   STRLEN                                           ~17     !1
         17        IS_SMALLER                                               !3, ~17
         18      > JMPNZ                                                    ~18, ->11
   13    19    >   IS_IDENTICAL                                     ~19     !2, 17
         20      > JMPZ_EX                                          ~19     ~19, ->26
         21    >   STRLEN                                           ~20     !1
         22        SUB                                              ~21     ~20, 2
         23        FETCH_DIM_R                                      ~22     !1, ~21
         24        IS_IDENTICAL                                     ~23     ~22, '1'
         25        BOOL                                             ~19     ~23
         26    > > JMPZ_EX                                          ~19     ~19, ->32
         27    >   STRLEN                                           ~24     !1
         28        SUB                                              ~25     ~24, 1
         29        FETCH_DIM_R                                      ~26     !1, ~25
         30        IS_EQUAL                                         ~27     ~26, '7'
         31        BOOL                                             ~19     ~27
         32    > > JMPZ_EX                                          ~19     ~19, ->35
         33    >   IS_NOT_IDENTICAL                                 ~28     !0, 917
         34        BOOL                                             ~19     ~28
         35    > > JMPZ                                                     ~19, ->40
   14    36    >   INIT_FCALL                                               'var_dump'
         37        SEND_VAR                                                 !0
         38        DO_ICALL                                                 
   15    39      > JMP                                                      ->41
    5    40    > > JMPNZ                                                    <true>, ->2
   18    41    > > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
173.61 ms | 1405 KiB | 15 Q