3v4l.org

run code in 300+ PHP versions simultaneously
<?php $current = '20130117010101'; $dateString = '20130115000000'; $preserveAfterDate = new DateTime($current); $preserveAfterDate->setTime(0,0,0); $preserveAfterDate->sub(new DateInterval('P2D')); $preserveAfterDate->modify('-2 day'); var_dump($preserveAfterDate->format('Y-m-d H:i:s')); $fileDate = new DateTime($dateString); var_dump($fileDate->format('Y-m-d H:i:s')); $difference = $preserveAfterDate->diff($fileDate); var_dump($difference->format('%r%a'));
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/3fpks
function name:  (null)
number of ops:  47
compiled vars:  !0 = $current, !1 = $dateString, !2 = $preserveAfterDate, !3 = $fileDate, !4 = $difference
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ASSIGN                                                   !0, '20130117010101'
    3     1        ASSIGN                                                   !1, '20130115000000'
    5     2        NEW                                              $7      'DateTime'
          3        SEND_VAR_EX                                              !0
          4        DO_FCALL                                      0          
          5        ASSIGN                                                   !2, $7
    6     6        INIT_METHOD_CALL                                         !2, 'setTime'
          7        SEND_VAL_EX                                              0
          8        SEND_VAL_EX                                              0
          9        SEND_VAL_EX                                              0
         10        DO_FCALL                                      0          
    7    11        INIT_METHOD_CALL                                         !2, 'sub'
         12        NEW                                              $11     'DateInterval'
         13        SEND_VAL_EX                                              'P2D'
         14        DO_FCALL                                      0          
         15        SEND_VAR_NO_REF_EX                                       $11
         16        DO_FCALL                                      0          
    8    17        INIT_METHOD_CALL                                         !2, 'modify'
         18        SEND_VAL_EX                                              '-2+day'
         19        DO_FCALL                                      0          
   10    20        INIT_FCALL                                               'var_dump'
         21        INIT_METHOD_CALL                                         !2, 'format'
         22        SEND_VAL_EX                                              'Y-m-d+H%3Ai%3As'
         23        DO_FCALL                                      0  $15     
         24        SEND_VAR                                                 $15
         25        DO_ICALL                                                 
   12    26        NEW                                              $17     'DateTime'
         27        SEND_VAR_EX                                              !1
         28        DO_FCALL                                      0          
         29        ASSIGN                                                   !3, $17
   13    30        INIT_FCALL                                               'var_dump'
         31        INIT_METHOD_CALL                                         !3, 'format'
         32        SEND_VAL_EX                                              'Y-m-d+H%3Ai%3As'
         33        DO_FCALL                                      0  $20     
         34        SEND_VAR                                                 $20
         35        DO_ICALL                                                 
   14    36        INIT_METHOD_CALL                                         !2, 'diff'
         37        SEND_VAR_EX                                              !3
         38        DO_FCALL                                      0  $22     
         39        ASSIGN                                                   !4, $22
   16    40        INIT_FCALL                                               'var_dump'
         41        INIT_METHOD_CALL                                         !4, 'format'
         42        SEND_VAL_EX                                              '%25r%25a'
         43        DO_FCALL                                      0  $24     
         44        SEND_VAR                                                 $24
         45        DO_ICALL                                                 
         46      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
160.35 ms | 1405 KiB | 15 Q