-2

我正在使用以下方法从 WoW Armory API 中检索一个巨大的字符串:

$allAchievements = file_get_contents('http://us.battle.net/api/wow/data/character/achievements');

这将返回:

http://us.battle.net/api/wow/data/character/achievements

我正在尝试将其转换为可管理的格式,例如看起来类似于以下内容的数组:

[achievements]=> array
             (
            [0]=> Array 
               (
                [id]=>6, 
                [title]=>Level 10, 
                [points]=>10, 
                [description]=>Reach Level 10.,
                [rewardItems]=>[],
                [icon]=>achievement_level_10,
                [criteria]=>[],
                [accountWide]=>false,
                [factionId]=>2,
                )
            [1]=> Array 
               (
                [id]=>7, 
                [title]=>Level 20, 
                [points]=>10, 
                [description]=>Reach Level 20.,
                [rewardItems]=>[],
                [icon]=>achievement_level_20,
                [criteria]=>[],
                [accountWide]=>false,
                [factionId]=>2,
                ) 
               ... 
              )

我尝试了很多explode() 和parse_str() 的组合,但是我无法创建任何对我有用的数组。

有没有办法使用 file_get_contents(); 以便返回一个数组而不是一个字符串?

如果没有,我应该从哪里开始将这个巨大的字符串扩展成一个可管理的数组?

感谢您的任何帮助!

4

1 回答 1

1

用这个

$allAchievements = file_get_contents('http://us.battle.net/api/wow/data/character/achievements');
$newArray = json_decode($allAchievements, true);
于 2013-05-12T16:55:33.530 回答