3v4l.org

run code in 300+ PHP versions simultaneously
<?php $minutes = 8 * 60; $enter1 = (new \DateTime())->setTime(9,27,00); $out1 = (new \DateTime())->setTime(13,30,00); $enter2 = (new \DateTime())->setTime(14,38,00); $partial = (((int)$out1->format('H')) * 60 + (int)$out1->format('i')) - (((int)$enter1->format('H')) * 60 + (int)$enter1->format('i')); $remainingMinutes = $minutes - $partial; $exitAt = clone $enter2; $exitAt->add(new \DateInterval('PT'.$remainingMinutes.'M')); echo "Esci alle: ".$exitAt->format('H:i:m');
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/USE2f
function name:  (null)
number of ops:  65
compiled vars:  !0 = $minutes, !1 = $enter1, !2 = $out1, !3 = $enter2, !4 = $partial, !5 = $remainingMinutes, !6 = $exitAt
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                   !0, 480
    5     1        NEW                                              $8      'DateTime'
          2        DO_FCALL                                      0          
          3        INIT_METHOD_CALL                                         $8, 'setTime'
          4        SEND_VAL_EX                                              9
          5        SEND_VAL_EX                                              27
          6        SEND_VAL_EX                                              0
          7        DO_FCALL                                      0  $10     
          8        ASSIGN                                                   !1, $10
    6     9        NEW                                              $12     'DateTime'
         10        DO_FCALL                                      0          
         11        INIT_METHOD_CALL                                         $12, 'setTime'
         12        SEND_VAL_EX                                              13
         13        SEND_VAL_EX                                              30
         14        SEND_VAL_EX                                              0
         15        DO_FCALL                                      0  $14     
         16        ASSIGN                                                   !2, $14
    8    17        NEW                                              $16     'DateTime'
         18        DO_FCALL                                      0          
         19        INIT_METHOD_CALL                                         $16, 'setTime'
         20        SEND_VAL_EX                                              14
         21        SEND_VAL_EX                                              38
         22        SEND_VAL_EX                                              0
         23        DO_FCALL                                      0  $18     
         24        ASSIGN                                                   !3, $18
   10    25        INIT_METHOD_CALL                                         !2, 'format'
         26        SEND_VAL_EX                                              'H'
         27        DO_FCALL                                      0  $20     
         28        CAST                                          4  ~21     $20
         29        MUL                                              ~22     ~21, 60
         30        INIT_METHOD_CALL                                         !2, 'format'
         31        SEND_VAL_EX                                              'i'
         32        DO_FCALL                                      0  $23     
         33        CAST                                          4  ~24     $23
         34        ADD                                              ~25     ~22, ~24
         35        INIT_METHOD_CALL                                         !1, 'format'
         36        SEND_VAL_EX                                              'H'
         37        DO_FCALL                                      0  $26     
         38        CAST                                          4  ~27     $26
         39        MUL                                              ~28     ~27, 60
         40        INIT_METHOD_CALL                                         !1, 'format'
         41        SEND_VAL_EX                                              'i'
         42        DO_FCALL                                      0  $29     
         43        CAST                                          4  ~30     $29
         44        ADD                                              ~31     ~28, ~30
         45        SUB                                              ~32     ~25, ~31
         46        ASSIGN                                                   !4, ~32
   11    47        SUB                                              ~34     !0, !4
         48        ASSIGN                                                   !5, ~34
   13    49        CLONE                                            ~36     !3
         50        ASSIGN                                                   !6, ~36
   14    51        INIT_METHOD_CALL                                         !6, 'add'
         52        NEW                                              $38     'DateInterval'
         53        CONCAT                                           ~39     'PT', !5
         54        CONCAT                                           ~40     ~39, 'M'
         55        SEND_VAL_EX                                              ~40
         56        DO_FCALL                                      0          
         57        SEND_VAR_NO_REF_EX                                       $38
         58        DO_FCALL                                      0          
   16    59        INIT_METHOD_CALL                                         !6, 'format'
         60        SEND_VAL_EX                                              'H%3Ai%3Am'
         61        DO_FCALL                                      0  $43     
         62        CONCAT                                           ~44     'Esci+alle%3A+', $43
         63        ECHO                                                     ~44
         64      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
156.08 ms | 1403 KiB | 13 Q