3v4l.org

run code in 300+ PHP versions simultaneously
<?php $file = <<< FILE users["524bd089-2a7b-4a71-ba23-16354d6351ae"] = { "id" : "524bd089-2a7b-4a71-ba23-16354d6351ae", "firstName" : "A", "lastName" : "T", "pictureName" : "66s2c.jpg", "username" : "a", "libraries" : [ "lEy27AZavfSR", "l0yApAoo2l4b", "lJl22YOtacxY", "l0UhMCvrMmka", "lJMWpIoFnaK4", "lCZ9cYYjVJcv", "l8kynpyoaej7" ] } libraries["lEy27AZavfSR"] = { "id" : "lEy27AZavfSR", "name" : "My Main Library", "description" : null, "numKeeps" : 0, "keeps" : [ ] } keeps["k4r5UIugqgfk"] = { "id" : "k4r5UIugqgfk", "keptAt" : 1449613295000, "lastActivityAt" : 1449613295000, "title" : "", "url" : "", "note" : null, "tags" : [ ], "libraries" : [ "lJl22YOtacxY" ], "summary" : "", "messages" : [ ] } FILE; preg_match_all("/(\w+)\[\"([^\]]*)\"\]\s*\=\s\{([^\}]*)\}*/", $file, $matches); foreach ($matches[1] as $key => $value) { $data[$value][$matches[2][$key]] = json_decode('{'.$matches[3][$key].'}'); } print_r($data);
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 8, Position 2 = 23
Branch analysis from position: 8
2 jumps found. (Code = 78) Position 1 = 9, Position 2 = 23
Branch analysis from position: 9
1 jumps found. (Code = 42) Position 1 = 8
Branch analysis from position: 8
Branch analysis from position: 23
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 23
filename:       /in/fW5gH
function name:  (null)
number of ops:  28
compiled vars:  !0 = $file, !1 = $matches, !2 = $value, !3 = $key, !4 = $data
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ASSIGN                                                   !0, 'users%5B%22524bd089-2a7b-4a71-ba23-16354d6351ae%22%5D+%3D+%7B%0A++%22id%22+%3A+%22524bd089-2a7b-4a71-ba23-16354d6351ae%22%2C%0A++%22firstName%22+%3A+%22A%22%2C%0A++%22lastName%22+%3A+%22T%22%2C%0A++%22pictureName%22+%3A+%2266s2c.jpg%22%2C%0A++%22username%22+%3A+%22a%22%2C%0A++%22libraries%22+%3A+%5B+%22lEy27AZavfSR%22%2C+%22l0yApAoo2l4b%22%2C+%22lJl22YOtacxY%22%2C+%22l0UhMCvrMmka%22%2C+%22lJMWpIoFnaK4%22%2C+%22lCZ9cYYjVJcv%22%2C+%22l8kynpyoaej7%22+%5D%0A%7D%0A+libraries%5B%22lEy27AZavfSR%22%5D+%3D+%7B%0A++%22id%22+%3A+%22lEy27AZavfSR%22%2C%0A++%22name%22+%3A+%22My+Main+Library%22%2C%0A++%22description%22+%3A+null%2C%0A++%22numKeeps%22+%3A+0%2C%0A++%22keeps%22+%3A+%5B+%5D%0A%7D%0A%0Akeeps%5B%22k4r5UIugqgfk%22%5D+%3D+%7B%0A++%22id%22+%3A+%22k4r5UIugqgfk%22%2C%0A++%22keptAt%22+%3A+1449613295000%2C%0A++%22lastActivityAt%22+%3A+1449613295000%2C%0A++%22title%22+%3A+%22%22%2C%0A++%22url%22+%3A+%22%22%2C%0A++%22note%22+%3A+null%2C%0A++%22tags%22+%3A+%5B+%5D%2C%0A++%22libraries%22+%3A+%5B+%22lJl22YOtacxY%22+%5D%2C%0A++%22summary%22+%3A+%22%22%2C%0A++%22messages%22+%3A+%5B+%5D%0A%7D'
   35     1        INIT_FCALL                                               'preg_match_all'
          2        SEND_VAL                                                 '%2F%28%5Cw%2B%29%5C%5B%22%28%5B%5E%5C%5D%5D%2A%29%22%5C%5D%5Cs%2A%5C%3D%5Cs%5C%7B%28%5B%5E%5C%7D%5D%2A%29%5C%7D%2A%2F'
          3        SEND_VAR                                                 !0
          4        SEND_REF                                                 !1
          5        DO_ICALL                                                 
   36     6        FETCH_DIM_R                                      ~7      !1, 1
          7      > FE_RESET_R                                       $8      ~7, ->23
          8    > > FE_FETCH_R                                       ~9      $8, !2, ->23
          9    >   ASSIGN                                                   !3, ~9
   37    10        FETCH_DIM_R                                      ~12     !1, 2
         11        FETCH_DIM_R                                      ~13     ~12, !3
         12        INIT_FCALL                                               'json_decode'
         13        FETCH_DIM_R                                      ~15     !1, 3
         14        FETCH_DIM_R                                      ~16     ~15, !3
         15        CONCAT                                           ~17     '%7B', ~16
         16        CONCAT                                           ~18     ~17, '%7D'
         17        SEND_VAL                                                 ~18
         18        DO_ICALL                                         $19     
         19        FETCH_DIM_W                                      $11     !4, !2
         20        ASSIGN_DIM                                               $11, ~13
         21        OP_DATA                                                  $19
   36    22      > JMP                                                      ->8
         23    >   FE_FREE                                                  $8
   39    24        INIT_FCALL                                               'print_r'
         25        SEND_VAR                                                 !4
         26        DO_ICALL                                                 
         27      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
141.99 ms | 1411 KiB | 19 Q