3v4l.org

run code in 300+ PHP versions simultaneously
<?php function dias_transcurridos($fecha_i,$fecha_f) { $formato="d-m-Y"; $diff = abs(DateTime::createFromFormat($formato,$fecha_i)-DateTime::createFromFormat($formato,$fecha_f)); $years = floor($diff / (365*60*60*24)); $months = floor(($diff - $years * 365*60*60*24) / (30*60*60*24)); $days = floor(($diff - $years * 365*60*60*24 - $months*30*60*60*24)/ (60*60*24)); return $days; }; echo dias_transcurridos(" 2014-06-01"," 2014-06-03");
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/YCZ1v
function name:  (null)
number of ops:  6
compiled vars:  none
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   14     0  E >   INIT_FCALL                                               'dias_transcurridos'
          1        SEND_VAL                                                 '+2014-06-01'
          2        SEND_VAL                                                 '+2014-06-03'
          3        DO_FCALL                                      0  $0      
          4        ECHO                                                     $0
          5      > RETURN                                                   1

Function dias_transcurridos:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/YCZ1v
function name:  dias_transcurridos
number of ops:  48
compiled vars:  !0 = $fecha_i, !1 = $fecha_f, !2 = $formato, !3 = $diff, !4 = $years, !5 = $months, !6 = $days
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   RECV                                             !0      
          1        RECV                                             !1      
    4     2        ASSIGN                                                   !2, 'd-m-Y'
    6     3        INIT_FCALL                                               'abs'
          4        INIT_STATIC_METHOD_CALL                                  'DateTime', 'createFromFormat'
          5        SEND_VAR                                                 !2
          6        SEND_VAR                                                 !0
          7        DO_FCALL                                      0  $8      
          8        INIT_STATIC_METHOD_CALL                                  'DateTime', 'createFromFormat'
          9        SEND_VAR                                                 !2
         10        SEND_VAR                                                 !1
         11        DO_FCALL                                      0  $9      
         12        SUB                                              ~10     $8, $9
         13        SEND_VAL                                                 ~10
         14        DO_ICALL                                         $11     
         15        ASSIGN                                                   !3, $11
    7    16        INIT_FCALL                                               'floor'
         17        DIV                                              ~13     !3, 31536000
         18        SEND_VAL                                                 ~13
         19        DO_ICALL                                         $14     
         20        ASSIGN                                                   !4, $14
    8    21        INIT_FCALL                                               'floor'
         22        MUL                                              ~16     !4, 365
         23        MUL                                              ~17     ~16, 60
         24        MUL                                              ~18     ~17, 60
         25        MUL                                              ~19     ~18, 24
         26        SUB                                              ~20     !3, ~19
         27        DIV                                              ~21     ~20, 2592000
         28        SEND_VAL                                                 ~21
         29        DO_ICALL                                         $22     
         30        ASSIGN                                                   !5, $22
    9    31        INIT_FCALL                                               'floor'
         32        MUL                                              ~24     !4, 365
         33        MUL                                              ~25     ~24, 60
         34        MUL                                              ~26     ~25, 60
         35        MUL                                              ~27     ~26, 24
         36        SUB                                              ~28     !3, ~27
         37        MUL                                              ~29     !5, 30
         38        MUL                                              ~30     ~29, 60
         39        MUL                                              ~31     ~30, 60
         40        MUL                                              ~32     ~31, 24
         41        SUB                                              ~33     ~28, ~32
         42        DIV                                              ~34     ~33, 86400
         43        SEND_VAL                                                 ~34
         44        DO_ICALL                                         $35     
         45        ASSIGN                                                   !6, $35
   10    46      > RETURN                                                   !6
   12    47*     > RETURN                                                   null

End of function dias_transcurridos

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
151.4 ms | 1403 KiB | 18 Q