3v4l.org

run code in 500+ PHP versions simultaneously
<?php function Leeftijd($leeftijd) { $array = explode('.', $leeftijd); // $array[0]; is het aantal jaren // $array[1]; is het getal achter de punt $leeftijd = $array[0] . ' jaar'; if (isset($array[1]) && $array[1] > 2) { if ($array[1] >= 3 && $array[1] < 4) { $leeftijd = 'iets ouder dan ' . $array[0] . ' jaar'; } elseif ($array[1] >= 3 && $array[1] < 4) { $leeftijd = 'bijna ' . $array[0] . ',5 jaar'; } elseif ($array[1] >= 4 && $array[1] < 7) { $leeftijd = 'ongeveer ' . $array[0] . ',5 jaar'; } else { $jaar = $array[0]; $jaar++; $leeftijd = 'bijna ' . $jaar . ' jaar'; } } return $leeftijd; } $prefix = '- deze kat is '; $leeftijd = 1; echo $prefix . Leeftijd($leeftijd) . '(ingevoerde leeftijd is ' . $leeftijd . ')' . PHP_EOL; $leeftijd = 1.2; echo $prefix . Leeftijd($leeftijd) . '(ingevoerde leeftijd is ' . $leeftijd . ')' . PHP_EOL; $leeftijd = 1.3; echo $prefix . Leeftijd($leeftijd) . '(ingevoerde leeftijd is ' . $leeftijd . ')' . PHP_EOL; $leeftijd = 2.8; echo $prefix . Leeftijd($leeftijd) . '(ingevoerde leeftijd is ' . $leeftijd . ')' . PHP_EOL; $leeftijd = 13.4; echo $prefix . Leeftijd($leeftijd) . '(ingevoerde leeftijd is ' . $leeftijd . ')' . PHP_EOL; $leeftijd = 13.5; echo $prefix . Leeftijd($leeftijd) . '(ingevoerde leeftijd is ' . $leeftijd . ')' . PHP_EOL; $leeftijd = 13.6; echo $prefix . Leeftijd($leeftijd) . '(ingevoerde leeftijd is ' . $leeftijd . ')' . PHP_EOL; $leeftijd = 13.7; echo $prefix . Leeftijd($leeftijd) . '(ingevoerde leeftijd is ' . $leeftijd . ')' . PHP_EOL; $leeftijd = 14.5; echo $prefix . Leeftijd($leeftijd) . '(ingevoerde leeftijd is ' . $leeftijd . ')' . PHP_EOL; $leeftijd = 5; echo $prefix . Leeftijd($leeftijd) . '(ingevoerde leeftijd is ' . $leeftijd . ')' . PHP_EOL; $leeftijd = 6.6; echo $prefix . Leeftijd($leeftijd) . '(ingevoerde leeftijd is ' . $leeftijd . ')' . PHP_EOL;
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/8lC97
function name:  (null)
number of ops:  112
compiled vars:  !0 = $prefix, !1 = $leeftijd
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
   27     0  E >   ASSIGN                                                       !0, '-+deze+kat+is+'
   28     1        ASSIGN                                                       !1, 1
          2        INIT_FCALL                                                   'leeftijd'
          3        SEND_VAR                                                     !1
          4        DO_FCALL                                          0  $4      
          5        CONCAT                                               ~5      !0, $4
          6        CONCAT                                               ~6      ~5, '%28ingevoerde+leeftijd+is+'
          7        CONCAT                                               ~7      ~6, !1
          8        CONCAT                                               ~8      ~7, '%29'
          9        CONCAT                                               ~9      ~8, '%0A'
         10        ECHO                                                         ~9
   29    11        ASSIGN                                                       !1, 1.2
         12        INIT_FCALL                                                   'leeftijd'
         13        SEND_VAR                                                     !1
         14        DO_FCALL                                          0  $11     
         15        CONCAT                                               ~12     !0, $11
         16        CONCAT                                               ~13     ~12, '%28ingevoerde+leeftijd+is+'
         17        CONCAT                                               ~14     ~13, !1
         18        CONCAT                                               ~15     ~14, '%29'
         19        CONCAT                                               ~16     ~15, '%0A'
         20        ECHO                                                         ~16
   30    21        ASSIGN                                                       !1, 1.3
         22        INIT_FCALL                                                   'leeftijd'
         23        SEND_VAR                                                     !1
         24        DO_FCALL                                          0  $18     
         25        CONCAT                                               ~19     !0, $18
         26        CONCAT                                               ~20     ~19, '%28ingevoerde+leeftijd+is+'
         27        CONCAT                                               ~21     ~20, !1
         28        CONCAT                                               ~22     ~21, '%29'
         29        CONCAT                                               ~23     ~22, '%0A'
         30        ECHO                                                         ~23
   31    31        ASSIGN                                                       !1, 2.8
         32        INIT_FCALL                                                   'leeftijd'
         33        SEND_VAR                                                     !1
         34        DO_FCALL                                          0  $25     
         35        CONCAT                                               ~26     !0, $25
         36        CONCAT                                               ~27     ~26, '%28ingevoerde+leeftijd+is+'
         37        CONCAT                                               ~28     ~27, !1
         38        CONCAT                                               ~29     ~28, '%29'
         39        CONCAT                                               ~30     ~29, '%0A'
         40        ECHO                                                         ~30
   32    41        ASSIGN                                                       !1, 13.4
         42        INIT_FCALL                                                   'leeftijd'
         43        SEND_VAR                                                     !1
         44        DO_FCALL                                          0  $32     
         45        CONCAT                                               ~33     !0, $32
         46        CONCAT                                               ~34     ~33, '%28ingevoerde+leeftijd+is+'
         47        CONCAT                                               ~35     ~34, !1
         48        CONCAT                                               ~36     ~35, '%29'
         49        CONCAT                                               ~37     ~36, '%0A'
         50        ECHO                                                         ~37
   33    51        ASSIGN                                                       !1, 13.5
         52        INIT_FCALL                                                   'leeftijd'
         53        SEND_VAR                                                     !1
         54        DO_FCALL                                          0  $39     
         55        CONCAT                                               ~40     !0, $39
         56        CONCAT                                               ~41     ~40, '%28ingevoerde+leeftijd+is+'
         57        CONCAT                                               ~42     ~41, !1
         58        CONCAT                                               ~43     ~42, '%29'
         59        CONCAT                                               ~44     ~43, '%0A'
         60        ECHO                                                         ~44
   34    61        ASSIGN                                                       !1, 13.6
         62        INIT_FCALL                                                   'leeftijd'
         63        SEND_VAR                                                     !1
         64        DO_FCALL                                          0  $46     
         65        CONCAT                                               ~47     !0, $46
         66        CONCAT                                               ~48     ~47, '%28ingevoerde+leeftijd+is+'
         67        CONCAT                                               ~49     ~48, !1
         68        CONCAT                                               ~50     ~49, '%29'
         69        CONCAT                                               ~51     ~50, '%0A'
         70        ECHO                                                         ~51
   35    71        ASSIGN                                                       !1, 13.7
         72        INIT_FCALL                                                   'leeftijd'
         73        SEND_VAR                                                     !1
         74        DO_FCALL                                          0  $53     
         75        CONCAT                                               ~54     !0, $53
         76        CONCAT                                               ~55     ~54, '%28ingevoerde+leeftijd+is+'
         77        CONCAT                                               ~56     ~55, !1
         78        CONCAT                                               ~57     ~56, '%29'
         79        CONCAT                                               ~58     ~57, '%0A'
         80        ECHO                                                         ~58
   36    81        ASSIGN                                                       !1, 14.5
         82        INIT_FCALL                                                   'leeftijd'
         83        SEND_VAR                                                     !1
         84        DO_FCALL                                          0  $60     
         85        CONCAT                                               ~61     !0, $60
         86        CONCAT                                               ~62     ~61, '%28ingevoerde+leeftijd+is+'
         87        CONCAT                                               ~63     ~62, !1
         88        CONCAT                                               ~64     ~63, '%29'
         89        CONCAT                                               ~65     ~64, '%0A'
         90        ECHO                                                         ~65
   37    91        ASSIGN                                                       !1, 5
         92        INIT_FCALL                                                   'leeftijd'
         93        SEND_VAR                                                     !1
         94        DO_FCALL                                          0  $67     
         95        CONCAT                                               ~68     !0, $67
         96        CONCAT                                               ~69     ~68, '%28ingevoerde+leeftijd+is+'
         97        CONCAT                                               ~70     ~69, !1
         98        CONCAT                                               ~71     ~70, '%29'
         99        CONCAT                                               ~72     ~71, '%0A'
        100        ECHO                                                         ~72
   38   101        ASSIGN                                                       !1, 6.6
        102        INIT_FCALL                                                   'leeftijd'
        103        SEND_VAR                                                     !1
        104        DO_FCALL                                          0  $74     
        105        CONCAT                                               ~75     !0, $74
        106        CONCAT                                               ~76     ~75, '%28ingevoerde+leeftijd+is+'
        107        CONCAT                                               ~77     ~76, !1
        108        CONCAT                                               ~78     ~77, '%29'
        109        CONCAT                                               ~79     ~78, '%0A'
        110        ECHO                                                         ~79
        111      > RETURN                                                       1

Function leeftijd:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 46) Position 1 = 11, Position 2 = 14
Branch analysis from position: 11
2 jumps found. (Code = 43) Position 1 = 15, Position 2 = 57
Branch analysis from position: 15
2 jumps found. (Code = 46) Position 1 = 18, Position 2 = 21
Branch analysis from position: 18
2 jumps found. (Code = 43) Position 1 = 22, Position 2 = 27
Branch analysis from position: 22
1 jumps found. (Code = 42) Position 1 = 57
Branch analysis from position: 57
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 27
2 jumps found. (Code = 46) Position 1 = 30, Position 2 = 33
Branch analysis from position: 30
2 jumps found. (Code = 43) Position 1 = 34, Position 2 = 39
Branch analysis from position: 34
1 jumps found. (Code = 42) Position 1 = 57
Branch analysis from position: 57
Branch analysis from position: 39
2 jumps found. (Code = 46) Position 1 = 42, Position 2 = 45
Branch analysis from position: 42
2 jumps found. (Code = 43) Position 1 = 46, Position 2 = 51
Branch analysis from position: 46
1 jumps found. (Code = 42) Position 1 = 57
Branch analysis from position: 57
Branch analysis from position: 51
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 45
Branch analysis from position: 33
Branch analysis from position: 21
Branch analysis from position: 57
Branch analysis from position: 14
filename:       /in/8lC97
function name:  Leeftijd
number of ops:  59
compiled vars:  !0 = $leeftijd, !1 = $array, !2 = $jaar
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
    3     0  E >   RECV                                                 !0      
    4     1        INIT_FCALL                                                   'explode'
          2        SEND_VAL                                                     '.'
          3        SEND_VAR                                                     !0
          4        DO_ICALL                                             $3      
          5        ASSIGN                                                       !1, $3
    9     6        FETCH_DIM_R                                          ~5      !1, 0
          7        CONCAT                                               ~6      ~5, '+jaar'
          8        ASSIGN                                                       !0, ~6
   10     9        ISSET_ISEMPTY_DIM_OBJ                             0  ~8      !1, 1
         10      > JMPZ_EX                                              ~8      ~8, ->14
         11    >   FETCH_DIM_R                                          ~9      !1, 1
         12        IS_SMALLER                                           ~10     2, ~9
         13        BOOL                                                 ~8      ~10
         14    > > JMPZ                                                         ~8, ->57
   11    15    >   FETCH_DIM_R                                          ~11     !1, 1
         16        IS_SMALLER_OR_EQUAL                                  ~12     3, ~11
         17      > JMPZ_EX                                              ~12     ~12, ->21
         18    >   FETCH_DIM_R                                          ~13     !1, 1
         19        IS_SMALLER                                           ~14     ~13, 4
         20        BOOL                                                 ~12     ~14
         21    > > JMPZ                                                         ~12, ->27
   12    22    >   FETCH_DIM_R                                          ~15     !1, 0
         23        CONCAT                                               ~16     'iets+ouder+dan+', ~15
         24        CONCAT                                               ~17     ~16, '+jaar'
         25        ASSIGN                                                       !0, ~17
   11    26      > JMP                                                          ->57
   13    27    >   FETCH_DIM_R                                          ~19     !1, 1
         28        IS_SMALLER_OR_EQUAL                                  ~20     3, ~19
         29      > JMPZ_EX                                              ~20     ~20, ->33
         30    >   FETCH_DIM_R                                          ~21     !1, 1
         31        IS_SMALLER                                           ~22     ~21, 4
         32        BOOL                                                 ~20     ~22
         33    > > JMPZ                                                         ~20, ->39
   14    34    >   FETCH_DIM_R                                          ~23     !1, 0
         35        CONCAT                                               ~24     'bijna+', ~23
         36        CONCAT                                               ~25     ~24, '%2C5+jaar'
         37        ASSIGN                                                       !0, ~25
   13    38      > JMP                                                          ->57
   15    39    >   FETCH_DIM_R                                          ~27     !1, 1
         40        IS_SMALLER_OR_EQUAL                                  ~28     4, ~27
         41      > JMPZ_EX                                              ~28     ~28, ->45
         42    >   FETCH_DIM_R                                          ~29     !1, 1
         43        IS_SMALLER                                           ~30     ~29, 7
         44        BOOL                                                 ~28     ~30
         45    > > JMPZ                                                         ~28, ->51
   16    46    >   FETCH_DIM_R                                          ~31     !1, 0
         47        CONCAT                                               ~32     'ongeveer+', ~31
         48        CONCAT                                               ~33     ~32, '%2C5+jaar'
         49        ASSIGN                                                       !0, ~33
   15    50      > JMP                                                          ->57
   18    51    >   FETCH_DIM_R                                          ~35     !1, 0
         52        ASSIGN                                                       !2, ~35
   19    53        PRE_INC                                                      !2
   20    54        CONCAT                                               ~38     'bijna+', !2
         55        CONCAT                                               ~39     ~38, '+jaar'
         56        ASSIGN                                                       !0, ~39
   24    57    > > RETURN                                                       !0
   25    58*     > RETURN                                                       null

End of function leeftijd

Generated using Vulcan Logic Dumper, using php 8.5.0


preferences:
231.06 ms | 3328 KiB | 25 Q