2017-12-24 13 views
2

だから私は、次のように返しURLを持っている:このJSON配列から変数値を取得するにはどうすればよいですか?

[{"_id":{"champ2_id":63,"champ1_id":2,"role":"TOP"},"count":4,"champ1":{"thirtyToEnd":0,"goldEarned":10727.5,"zeroToTen":0,"minionsKilled":158,"winrate":0,"assists":6.25,"role":"TOP","deaths":6,"kills":4,"wins":0,"totalDamageDealtToChampions":17350.75,"twentyToThirty":0,"tenToTwenty":0,"neutralMinionsKilledTeamJungle":1.75,"killingSprees":0.75,"weighedScore":27214.5375},"champ2":{"twentyToThirty":0,"wins":4,"winrate":1,"kills":5.75,"neutralMinionsKilledTeamJungle":5,"totalDamageDealtToChampions":21881.25,"role":"TOP","assists":7,"tenToTwenty":0,"thirtyToEnd":0,"zeroToTen":0,"goldEarned":12371.75,"killingSprees":1.25,"minionsKilled":140.5,"deaths":4.25,"weighedScore":33166.587499999994}] 

私はURLが簡単に何かを返したときに、配列でキーの値を取得する方法を学びました。 URLを返しますたとえば:

$json = file_get_contents(URL); 
$data = json_decode($json, true); 
echo $data['id']; 

簡単です:

{"id":34743514,"accountId":49161997,"name":"League of Fiddle","profileIconId":786,"revisionDate":1514093712000,"summonerLevel":52} 

私はこのコードでIDをエコーすることができます。しかし、私は、私は_idのchamp2_idの値を取得したいと言うように、より複雑なもののために同じコードを使用しようとすると、私が試した:

$json = file_get_contents(URL); 
$data = json_decode($json, true); 
echo $data['_id']['champ2_id']; 

しかし、これは_idが未定義のインデックスであると言います。私は間違って何をしていますか?

+0

でなければなりません。 – Chay22

+0

または多次元配列。 '$ data [0] ['_ id'] ['champ2_id']' – frz3993

答えて

3

は、それが配列内の配列です

$data[0]['_id']['champ2_id']; 
+0

ありがとうございました!私の答えが正しいかどうかを判断するには、できるだけ早く –

+0

を選択するようにしてください。 http://meta.stackexchange.com/questions/5234/how-does受付作業 – scaisEdge

関連する問題