2017-12-10 1 views
0

그래서 기본적으로 getson json 콘텐츠에서 PHP의 스팀 플레이어 인벤토리를 얻으려고 시도하지만 나는 그것을 수행하는 방법을 알아 내지 못합니다. espcially 전에 json과 많이 작동하지 않았습니다. 필자는 JSON에서 원하는 것을 얻기 위해 PHP에서 선택해야 할 문제가 있습니다.Steam Inventory in json

는 PHP :

 
    $inventoryJsonUrl = ' http://steamcommunity.com/inventory/ '.$steamID.'/730/2?l=english&count=5000'; 
    $inventoryJsonGet = file_get_contents($inventoryJsonUrl); 
    $inventory = json_decode($inventoryJsonGet, TRUE);

for ($i=0; $i < count($inventory['assets']) ; $i++) { echo $inventory['assets']; }

그리고 $ inventoryJsonURL 지금 http://steamcommunity.com/inventory/76561198260345960/730/2?l=english&count=5000

입니다 그리고 나는 내가 원하는 것을 얻기에 문제가 있다고 할 수 있습니다, 내 말은 내가 원하는 for 루프에서 그런 말을 할 수 있습니다 항목/스킨의 이름, 해당 항목의 ID 및 기타 항목이 있습니다. 그러나 나는 그것을 얻기 위해 어떻게 그리고 무엇을 골라야할지 모른다.

죄송합니다.

미리 감사드립니다.

+0

찾고있는 데이터가'assets'이 아닌'description' 섹션에 있다고 생각합니다. 'classid'와'instanceid'는'assets'에서 나온 것과 일치하는 것 같지만'name'과'tags'도 있습니다 – dbrumann

+0

내가 바꾸면 ro $ inventory [ 'descriptions'] [ 'classid'] 에러가납니다 그 : 알림 : 정의되지 않은 인덱스 : instanceid. 그것은 내가 원하는 것만 큼 생각하지 않았기 때문에 자산 대신 몇 가지 일을 시도했기 때문에 문제입니다. – Coder

답변

0

PHP의 foreach 루프를 사용할 수 있습니다.

$inventories = json_decode($inventoryJsonGet , TRUE); 

// you can check the structure of your array by 
// print_r($inventories) 
foreach ($inventories['descriptions'] as $key => $description) { 
    echo '<pre>'; 
    echo $description['appid']; 
    echo $description['market_name']; 
    echo '</pre>'; 
} 
+0

그게 내가 필요한거야. 고마워요! – Coder

0

끝점에는 자산 및 설명이라는 두 개의 목록이 있습니다. 당신이 찾고있는 것을 정말로 모르는 경우 도움을주기가 어렵습니다. 당신이 찾고있는 것은 모든 데이터가 있기 때문에 설명이라고 생각합니다. 첫 번째 항목은 여기를 참조하십시오. https://www.dropbox.com/s/z736vu6boh9rfi6/steam1.gif?dl=0 Counterstrike GO의 샷굿 인 것 같습니다.

또한,이 문서는 당신에게 약간의 도움이 될 수 Getting someone's Steam inventory

을 그리고 시작으로, 나는 당신이 거기에 무엇이 더 나은 개요를 가지고, 그래서 그 JSON의 내용을 아름답게하는 것이 좋습니다. 나는 보통 https://codebeautify.org/jsonviewer을 사용하지만 다른 몇 가지가 있습니다.

+0

나는 definetly 그것을 볼 것이다! 감사합니다 json beatifier, 나는 사용했지만 다른 사이트에 있지만 나는이 하나 preffer 지금/ – Coder