3v4l.org

run code in 300+ PHP versions simultaneously
<?php $time = "18 hours 13 minutes"; $time2 = "47 minutes"; $time3 = "1 hour"; $time4 = "1 hour"; $time5 = "1 hour"; $time6 = ""; $time7 = ""; $start = new DateTime(); $end = clone($start); if (!empty($time)) $end->modify("+$time"); if (!empty($time2)) $end->modify("+$time2"); if (!empty($time3)) $end->modify("+$time3"); if (!empty($time4)) $end->modify("+$time4"); if (!empty($time5)) $end->modify("+$time5"); if (!empty($time6)) $end->modify("+$time6"); if (!empty($time7)) $end->modify("+$time7"); $total = $end->diff($start); echo $total->format('%h hours %i minutes');
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 15, Position 2 = 20
Branch analysis from position: 15
2 jumps found. (Code = 43) Position 1 = 23, Position 2 = 28
Branch analysis from position: 23
2 jumps found. (Code = 43) Position 1 = 31, Position 2 = 36
Branch analysis from position: 31
2 jumps found. (Code = 43) Position 1 = 39, Position 2 = 44
Branch analysis from position: 39
2 jumps found. (Code = 43) Position 1 = 47, Position 2 = 52
Branch analysis from position: 47
2 jumps found. (Code = 43) Position 1 = 55, Position 2 = 60
Branch analysis from position: 55
2 jumps found. (Code = 43) Position 1 = 63, Position 2 = 68
Branch analysis from position: 63
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 68
Branch analysis from position: 60
Branch analysis from position: 52
Branch analysis from position: 44
Branch analysis from position: 36
Branch analysis from position: 28
Branch analysis from position: 20
filename:       /in/FI63K
function name:  (null)
number of ops:  77
compiled vars:  !0 = $time, !1 = $time2, !2 = $time3, !3 = $time4, !4 = $time5, !5 = $time6, !6 = $time7, !7 = $start, !8 = $end, !9 = $total
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ASSIGN                                                   !0, '18+hours+13+minutes'
    3     1        ASSIGN                                                   !1, '47+minutes'
    4     2        ASSIGN                                                   !2, '1+hour'
    5     3        ASSIGN                                                   !3, '1+hour'
    6     4        ASSIGN                                                   !4, '1+hour'
    7     5        ASSIGN                                                   !5, ''
    8     6        ASSIGN                                                   !6, ''
   10     7        NEW                                              $17     'DateTime'
          8        DO_FCALL                                      0          
          9        ASSIGN                                                   !7, $17
   11    10        CLONE                                            ~20     !7
         11        ASSIGN                                                   !8, ~20
   13    12        ISSET_ISEMPTY_CV                                 ~22     !0
         13        BOOL_NOT                                         ~23     ~22
         14      > JMPZ                                                     ~23, ->20
         15    >   INIT_METHOD_CALL                                         !8, 'modify'
         16        NOP                                                      
         17        FAST_CONCAT                                      ~24     '%2B', !0
         18        SEND_VAL_EX                                              ~24
         19        DO_FCALL                                      0          
   14    20    >   ISSET_ISEMPTY_CV                                 ~26     !1
         21        BOOL_NOT                                         ~27     ~26
         22      > JMPZ                                                     ~27, ->28
         23    >   INIT_METHOD_CALL                                         !8, 'modify'
         24        NOP                                                      
         25        FAST_CONCAT                                      ~28     '%2B', !1
         26        SEND_VAL_EX                                              ~28
         27        DO_FCALL                                      0          
   15    28    >   ISSET_ISEMPTY_CV                                 ~30     !2
         29        BOOL_NOT                                         ~31     ~30
         30      > JMPZ                                                     ~31, ->36
         31    >   INIT_METHOD_CALL                                         !8, 'modify'
         32        NOP                                                      
         33        FAST_CONCAT                                      ~32     '%2B', !2
         34        SEND_VAL_EX                                              ~32
         35        DO_FCALL                                      0          
   16    36    >   ISSET_ISEMPTY_CV                                 ~34     !3
         37        BOOL_NOT                                         ~35     ~34
         38      > JMPZ                                                     ~35, ->44
         39    >   INIT_METHOD_CALL                                         !8, 'modify'
         40        NOP                                                      
         41        FAST_CONCAT                                      ~36     '%2B', !3
         42        SEND_VAL_EX                                              ~36
         43        DO_FCALL                                      0          
   17    44    >   ISSET_ISEMPTY_CV                                 ~38     !4
         45        BOOL_NOT                                         ~39     ~38
         46      > JMPZ                                                     ~39, ->52
         47    >   INIT_METHOD_CALL                                         !8, 'modify'
         48        NOP                                                      
         49        FAST_CONCAT                                      ~40     '%2B', !4
         50        SEND_VAL_EX                                              ~40
         51        DO_FCALL                                      0          
   18    52    >   ISSET_ISEMPTY_CV                                 ~42     !5
         53        BOOL_NOT                                         ~43     ~42
         54      > JMPZ                                                     ~43, ->60
         55    >   INIT_METHOD_CALL                                         !8, 'modify'
         56        NOP                                                      
         57        FAST_CONCAT                                      ~44     '%2B', !5
         58        SEND_VAL_EX                                              ~44
         59        DO_FCALL                                      0          
   19    60    >   ISSET_ISEMPTY_CV                                 ~46     !6
         61        BOOL_NOT                                         ~47     ~46
         62      > JMPZ                                                     ~47, ->68
         63    >   INIT_METHOD_CALL                                         !8, 'modify'
         64        NOP                                                      
         65        FAST_CONCAT                                      ~48     '%2B', !6
         66        SEND_VAL_EX                                              ~48
         67        DO_FCALL                                      0          
   21    68    >   INIT_METHOD_CALL                                         !8, 'diff'
         69        SEND_VAR_EX                                              !7
         70        DO_FCALL                                      0  $50     
         71        ASSIGN                                                   !9, $50
   22    72        INIT_METHOD_CALL                                         !9, 'format'
         73        SEND_VAL_EX                                              '%25h+hours+%25i+minutes'
         74        DO_FCALL                                      0  $52     
         75        ECHO                                                     $52
         76      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
155.03 ms | 1399 KiB | 13 Q