3v4l.org

run code in 300+ PHP versions simultaneously
<?php function check($dateAdded,$now){ $secondsInPast = $now->getTimestamp() - $dateAdded->getTimestamp(); if($secondsInPast > 60*60*2){ echo $dateAdded->format('H:n:s'). " Old enough\n"; } else { echo $dateAdded->format('H:n:s'). " Not Old Enough\n"; } } $now = new Datetime('now'); echo "Now:" . $now->format('H:n:s').'\n\n'; check(new DateTime('- 13 seconds'),$now); check(new DateTime('- 13 minutes'),$now); check(new DateTime('- 100 minutes'),$now); check(new DateTime('- 125 minutes'),$now);
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/8jkB8
function name:  (null)
number of ops:  39
compiled vars:  !0 = $now
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   10     0  E >   NEW                                              $1      'Datetime'
          1        SEND_VAL_EX                                              'now'
          2        DO_FCALL                                      0          
          3        ASSIGN                                                   !0, $1
   11     4        INIT_METHOD_CALL                                         !0, 'format'
          5        SEND_VAL_EX                                              'H%3An%3As'
          6        DO_FCALL                                      0  $4      
          7        CONCAT                                           ~5      'Now%3A', $4
          8        CONCAT                                           ~6      ~5, '%5Cn%5Cn'
          9        ECHO                                                     ~6
   12    10        INIT_FCALL                                               'check'
         11        NEW                                              $7      'DateTime'
         12        SEND_VAL_EX                                              '-+13+seconds'
         13        DO_FCALL                                      0          
         14        SEND_VAR                                                 $7
         15        SEND_VAR                                                 !0
         16        DO_FCALL                                      0          
   13    17        INIT_FCALL                                               'check'
         18        NEW                                              $10     'DateTime'
         19        SEND_VAL_EX                                              '-+13+minutes'
         20        DO_FCALL                                      0          
         21        SEND_VAR                                                 $10
         22        SEND_VAR                                                 !0
         23        DO_FCALL                                      0          
   14    24        INIT_FCALL                                               'check'
         25        NEW                                              $13     'DateTime'
         26        SEND_VAL_EX                                              '-+100+minutes'
         27        DO_FCALL                                      0          
         28        SEND_VAR                                                 $13
         29        SEND_VAR                                                 !0
         30        DO_FCALL                                      0          
   15    31        INIT_FCALL                                               'check'
         32        NEW                                              $16     'DateTime'
         33        SEND_VAL_EX                                              '-+125+minutes'
         34        DO_FCALL                                      0          
         35        SEND_VAR                                                 $16
         36        SEND_VAR                                                 !0
         37        DO_FCALL                                      0          
         38      > RETURN                                                   1

Function check:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 10, Position 2 = 16
Branch analysis from position: 10
1 jumps found. (Code = 42) Position 1 = 21
Branch analysis from position: 21
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 16
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/8jkB8
function name:  check
number of ops:  22
compiled vars:  !0 = $dateAdded, !1 = $now, !2 = $secondsInPast
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   RECV                                             !0      
          1        RECV                                             !1      
    3     2        INIT_METHOD_CALL                                         !1, 'getTimestamp'
          3        DO_FCALL                                      0  $3      
          4        INIT_METHOD_CALL                                         !0, 'getTimestamp'
          5        DO_FCALL                                      0  $4      
          6        SUB                                              ~5      $3, $4
          7        ASSIGN                                                   !2, ~5
    4     8        IS_SMALLER                                               7200, !2
          9      > JMPZ                                                     ~7, ->16
    5    10    >   INIT_METHOD_CALL                                         !0, 'format'
         11        SEND_VAL_EX                                              'H%3An%3As'
         12        DO_FCALL                                      0  $8      
         13        CONCAT                                           ~9      $8, '+Old+enough%0A'
         14        ECHO                                                     ~9
         15      > JMP                                                      ->21
    7    16    >   INIT_METHOD_CALL                                         !0, 'format'
         17        SEND_VAL_EX                                              'H%3An%3As'
         18        DO_FCALL                                      0  $10     
         19        CONCAT                                           ~11     $10, '+Not+Old+Enough%0A'
         20        ECHO                                                     ~11
    9    21    > > RETURN                                                   null

End of function check

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
156.76 ms | 1403 KiB | 17 Q