3v4l.org

run code in 300+ PHP versions simultaneously
<?php $dt1 = new \DateTime( '2014/12/31' ); $dt1->modify( '-1 month' ); $m = (int) $dt1->format( 'm' ); var_dump( $m ); // still 12 !!!
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/q14nW
function name:  (null)
number of ops:  16
compiled vars:  !0 = $dt1, !1 = $m
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   NEW                                              $2      'DateTime'
          1        SEND_VAL_EX                                              '2014%2F12%2F31'
          2        DO_FCALL                                      0          
          3        ASSIGN                                                   !0, $2
    4     4        INIT_METHOD_CALL                                         !0, 'modify'
          5        SEND_VAL_EX                                              '-1+month'
          6        DO_FCALL                                      0          
    5     7        INIT_METHOD_CALL                                         !0, 'format'
          8        SEND_VAL_EX                                              'm'
          9        DO_FCALL                                      0  $6      
         10        CAST                                          4  ~7      $6
         11        ASSIGN                                                   !1, ~7
    6    12        INIT_FCALL                                               'var_dump'
         13        SEND_VAR                                                 !1
         14        DO_ICALL                                                 
         15      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
242.56 ms | 1394 KiB | 15 Q