3v4l.org

run code in 500+ PHP versions simultaneously
<?php $d1 = new DateTime('12/10/2012 05:33'); $d2 = new DateTime('12/10/2012'); $d3 = new DateTime('12/10/2012 00:00'); $d4 = new DateTime('12/10/2012 00:00:00'); function isMidnight(DateTime $dt): bool { return !trim($dt->format('Hisu'), '0'); } var_dump(isMidnight($d1), isMidnight($d2), isMidnight($d3), isMidnight($d4));
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/N0puX
function name:  (null)
number of ops:  35
compiled vars:  !0 = $d1, !1 = $d2, !2 = $d3, !3 = $d4
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
    3     0  E >   NEW                                                  $4      'DateTime'
          1        SEND_VAL_EX                                                  '12%2F10%2F2012+05%3A33'
          2        DO_FCALL                                          0          
          3        ASSIGN                                                       !0, $4
    4     4        NEW                                                  $7      'DateTime'
          5        SEND_VAL_EX                                                  '12%2F10%2F2012'
          6        DO_FCALL                                          0          
          7        ASSIGN                                                       !1, $7
    5     8        NEW                                                  $10     'DateTime'
          9        SEND_VAL_EX                                                  '12%2F10%2F2012+00%3A00'
         10        DO_FCALL                                          0          
         11        ASSIGN                                                       !2, $10
    6    12        NEW                                                  $13     'DateTime'
         13        SEND_VAL_EX                                                  '12%2F10%2F2012+00%3A00%3A00'
         14        DO_FCALL                                          0          
         15        ASSIGN                                                       !3, $13
   13    16        INIT_FCALL                                                   'var_dump'
         17        INIT_FCALL                                                   'ismidnight'
         18        SEND_VAR                                                     !0
         19        DO_FCALL                                          0  $16     
         20        SEND_VAR                                                     $16
         21        INIT_FCALL                                                   'ismidnight'
         22        SEND_VAR                                                     !1
         23        DO_FCALL                                          0  $17     
         24        SEND_VAR                                                     $17
         25        INIT_FCALL                                                   'ismidnight'
         26        SEND_VAR                                                     !2
         27        DO_FCALL                                          0  $18     
         28        SEND_VAR                                                     $18
         29        INIT_FCALL                                                   'ismidnight'
         30        SEND_VAR                                                     !3
         31        DO_FCALL                                          0  $19     
         32        SEND_VAR                                                     $19
         33        DO_ICALL                                                     
         34      > RETURN                                                       1

Function ismidnight:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/N0puX
function name:  isMidnight
number of ops:  10
compiled vars:  !0 = $dt
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
    8     0  E >   RECV                                                 !0      
   10     1        INIT_METHOD_CALL                                             !0, 'format'
          2        SEND_VAL_EX                                                  'Hisu'
          3        DO_FCALL                                          0  $1      
          4        FRAMELESS_ICALL_2                trim                ~2      $1, '0'
          5        BOOL_NOT                                             ~3      ~2
          6        VERIFY_RETURN_TYPE                                           ~3
          7      > RETURN                                                       ~3
   11     8*       VERIFY_RETURN_TYPE                                           
          9*     > RETURN                                                       null

End of function ismidnight

Generated using Vulcan Logic Dumper, using php 8.5.0


preferences:
157.63 ms | 1720 KiB | 18 Q