0

I am trying to do some CS: Global Offensive inventory list for personal experience. Now I dont know how I should display all the items in the inventory.

THE INVENTORY JSON

{
    "success":true,
    "rgInventory":{
            "1847345369":{
                    "id":"1847345369",
                    "classid":"638241994",
                    "instanceid":"188530139",
                    "amount":"1","pos":1
                    },
            "1844330224":{
                    "id":"1844330224",
                    "classid":"469444104",
                    "instanceid":"0",
                    "amount":"1","pos":2
                    }
    }
}

So when I want the id of the first item I would have to use this

$item = $parsed_json->{'rgInventory'}->{'1847345369'}->id;

But using the itemid in the json parsing is stupid. How could I get it to list all the items' IDs?

Keenjus
  • 31
  • 2
  • 4

2 Answers2

0

Use array instead of objects.

"rgInventory":[
    { "id":"1847345369", ...}, 
    { "id":"1844330224", ...}
]

Then use index to get it([0] and so on)

ch271828n
  • 15,854
  • 5
  • 53
  • 88
0

Use a foreach() loop.

<?php

$items = array();

foreach($parsed_json->{'rgInventory'} as $key => $obj) {
    // $key now holds '1844330224' etc
    $items[] = $obj->id; // or re-use $key here ;-)
}

?>
sgtdck
  • 1,008
  • 7
  • 15