3v4l.org

run code in 500+ PHP versions simultaneously
<?php $mybalance = '{ "responseData": [ { "totalValue": 0.0, "active": "Oct 16, 2019 11:16:23 AM", "expired": "Mar 28, 2020 3:15:58 PM" }, { "totalValue": 0.0, "active": "Oct 16, 2019 11:16:23 AM", "expired": "Mar 28, 2020 3:15:58 PM" }, { "totalValue": 0, "active": "Jun 25, 2019 6:34:59 PM", "expired": "Oct 16, 2019 11:10:32 AM" } ], "responseMessage": "success", "responseCode": 0 }'; date_default_timezone_set('UTC'); $json = json_decode($mybalance, true); foreach($json['responseData'] as $key=>$value){ if(strtotime($value['expired']) < strtotime(date('M d, Y H:i:s A'))){ unset($json['responseData'][$key]); } } print_r($json);
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 11, Position 2 = 28
Branch analysis from position: 11
2 jumps found. (Code = 78) Position 1 = 12, Position 2 = 28
Branch analysis from position: 12
2 jumps found. (Code = 43) Position 1 = 25, Position 2 = 27
Branch analysis from position: 25
1 jumps found. (Code = 42) Position 1 = 11
Branch analysis from position: 11
Branch analysis from position: 27
Branch analysis from position: 28
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 28
filename:       /in/AAqgJ
function name:  (null)
number of ops:  33
compiled vars:  !0 = $mybalance, !1 = $json, !2 = $value, !3 = $key
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                       !0, '%7B%0A++++%22responseData%22%3A+%5B%0A++++++++%7B%0A++++++++++++%22totalValue%22%3A+0.0%2C%0A++++++++++++%22active%22%3A+%22Oct+16%2C+2019+11%3A16%3A23+AM%22%2C%0A++++++++++++%22expired%22%3A+%22Mar+28%2C+2020+3%3A15%3A58+PM%22%0A++++++++%7D%2C%0A++++++++%7B%0A++++++++++++%22totalValue%22%3A+0.0%2C%0A++++++++++++%22active%22%3A+%22Oct+16%2C+2019+11%3A16%3A23+AM%22%2C%0A++++++++++++%22expired%22%3A+%22Mar+28%2C+2020+3%3A15%3A58+PM%22%0A++++++++%7D%2C%0A++++++++%7B%0A++++++++++++%22totalValue%22%3A+0%2C%0A++++++++++++%22active%22%3A+%22Jun+25%2C+2019+6%3A34%3A59+PM%22%2C%0A++++++++++++%22expired%22%3A+%22Oct+16%2C+2019+11%3A10%3A32+AM%22%0A++++%7D%0A++++%5D%2C%0A++++%22responseMessage%22%3A+%22success%22%2C%0A++++%22responseCode%22%3A+0%0A%7D'
   25     1        INIT_FCALL                                                   'date_default_timezone_set'
          2        SEND_VAL                                                     'UTC'
          3        DO_ICALL                                                     
   27     4        INIT_FCALL                                                   'json_decode'
          5        SEND_VAR                                                     !0
          6        SEND_VAL                                                     <true>
          7        DO_ICALL                                             $6      
          8        ASSIGN                                                       !1, $6
   29     9        FETCH_DIM_R                                          ~8      !1, 'responseData'
         10      > FE_RESET_R                                           $9      ~8, ->28
         11    > > FE_FETCH_R                                           ~10     $9, !2, ->28
         12    >   ASSIGN                                                       !3, ~10
   30    13        INIT_FCALL                                                   'strtotime'
         14        FETCH_DIM_R                                          ~12     !2, 'expired'
         15        SEND_VAL                                                     ~12
         16        DO_ICALL                                             $13     
         17        INIT_FCALL                                                   'strtotime'
         18        INIT_FCALL                                                   'date'
         19        SEND_VAL                                                     'M+d%2C+Y+H%3Ai%3As+A'
         20        DO_ICALL                                             $14     
         21        SEND_VAR                                                     $14
         22        DO_ICALL                                             $15     
         23        IS_SMALLER                                                   $13, $15
         24      > JMPZ                                                         ~16, ->27
   31    25    >   FETCH_DIM_UNSET                                      $17     !1, 'responseData'
         26        UNSET_DIM                                                    $17, !3
   29    27    > > JMP                                                          ->11
         28    >   FE_FREE                                                      $9
   35    29        INIT_FCALL                                                   'print_r'
         30        SEND_VAR                                                     !1
         31        DO_ICALL                                                     
         32      > RETURN                                                       1

Generated using Vulcan Logic Dumper, using php 8.5.0


preferences:
209.15 ms | 2243 KiB | 18 Q