3v4l.org

run code in 300+ PHP versions simultaneously
<?php $json = '{ "packages": [ { "id": "TEST", "name": "TEST", "desc": "TEST", "image": "TEST", "package": "TEST", "version": "1.00", "picpath": "TEST", "desc_1": "TEST", "desc_2": "TEST", "ReviewStars": "TEST", "Size": "", "Author": "TEST", "apptype": "TEST", "pv": "TEST", "main_icon_path": "TEST", "main_menu_pic": "TEST", "releaseddate": "5/03/2018" }, { "id": "TEST", "name": "TEST", "desc": "TEST", "image": "TEST", "package": "TEST", "version": "1.00", "picpath": "TEST", "desc_1": "ssss", "desc_2": "ssss", "ReviewStars": "5", "Size": "TEST", "Author": "TEST", "apptype": "222", "pv": "TEST", "main_icon_path": "TEST", "main_menu_pic": "TEST", "releaseddate": "2019-06-19" } ] }'; $jsonToArray = json_decode($json, true); removeByKey($jsonToArray['packages'] , 0); print_r($jsonToArray); function removeByKey(&$a, $key){ unset($a[$key]); return $a; }
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/6FHGI
function name:  (null)
number of ops:  16
compiled vars:  !0 = $json, !1 = $jsonToArray
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ASSIGN                                                   !0, '%7B%0A++%22packages%22%3A+%5B%0A++%7B%0A++++++%22id%22%3A+%22TEST%22%2C%0A++++++%22name%22%3A+%22TEST%22%2C%0A++++++%22desc%22%3A+%22TEST%22%2C%0A++++++%22image%22%3A+%22TEST%22%2C%0A++++++%22package%22%3A+%22TEST%22%2C%0A++++++%22version%22%3A+%221.00%22%2C%0A++++++%22picpath%22%3A+%22TEST%22%2C%0A++++++%22desc_1%22%3A+%22TEST%22%2C%0A++++++%22desc_2%22%3A+%22TEST%22%2C%0A++++++%22ReviewStars%22%3A+%22TEST%22%2C%0A++++++%22Size%22%3A+%22%22%2C%0A++++++%22Author%22%3A+%22TEST%22%2C%0A++++++%22apptype%22%3A+%22TEST%22%2C%0A++++++%22pv%22%3A+%22TEST%22%2C%0A++++++%22main_icon_path%22%3A+%22TEST%22%2C%0A++++++%22main_menu_pic%22%3A+%22TEST%22%2C%0A++++++%22releaseddate%22%3A+%225%2F03%2F2018%22%0A++++%7D%2C%0A%7B%0A++++%22id%22%3A+%22TEST%22%2C%0A++++%22name%22%3A+%22TEST%22%2C%0A++++%22desc%22%3A+%22TEST%22%2C%0A++++%22image%22%3A+%22TEST%22%2C%0A++++%22package%22%3A+%22TEST%22%2C%0A++++%22version%22%3A+%221.00%22%2C%0A++++%22picpath%22%3A+%22TEST%22%2C%0A++++%22desc_1%22%3A+%22ssss%22%2C%0A++++%22desc_2%22%3A+%22ssss%22%2C%0A++++%22ReviewStars%22%3A+%225%22%2C%0A++++%22Size%22%3A+%22TEST%22%2C%0A++++%22Author%22%3A+%22TEST%22%2C%0A++++%22apptype%22%3A+%22222%22%2C%0A++++%22pv%22%3A+%22TEST%22%2C%0A++++%22main_icon_path%22%3A+%22TEST%22%2C%0A++++%22main_menu_pic%22%3A+%22TEST%22%2C%0A++++%22releaseddate%22%3A+%222019-06-19%22%0A%7D%0A%0A++++%5D%0A%7D'
   46     1        INIT_FCALL                                               'json_decode'
          2        SEND_VAR                                                 !0
          3        SEND_VAL                                                 <true>
          4        DO_ICALL                                         $3      
          5        ASSIGN                                                   !1, $3
   48     6        INIT_FCALL_BY_NAME                                       'removeByKey'
          7        CHECK_FUNC_ARG                                           
          8        FETCH_DIM_FUNC_ARG                               $5      !1, 'packages'
          9        SEND_FUNC_ARG                                            $5
         10        SEND_VAL_EX                                              0
         11        DO_FCALL                                      0          
   50    12        INIT_FCALL                                               'print_r'
         13        SEND_VAR                                                 !1
         14        DO_ICALL                                                 
   55    15      > RETURN                                                   1

Function removebykey:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/6FHGI
function name:  removeByKey
number of ops:  5
compiled vars:  !0 = $a, !1 = $key
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   52     0  E >   RECV                                             !0      
          1        RECV                                             !1      
   53     2        UNSET_DIM                                                !0, !1
   54     3      > RETURN                                                   !0
   55     4*     > RETURN                                                   null

End of function removebykey

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
142.45 ms | 1004 KiB | 15 Q